Storing the configuration in JSON or YAML files
We can store configuration values in JSON or YAML files with relative ease. The syntax is designed to be user friendly. We can represent a wide variety of things in YAML. We're somewhat restricted to a narrower variety of object classes in JSON. We can use a JSON configuration file that looks like the following code:
{ "table":{ "dealer":"Hit17", "split":"NoResplitAces", "decks":6, "limit":50, "payout":[3,2] }, "player":{ "play":"SomeStrategy", "betting":"Flat", "rounds":100, "stake":50 }, "simulator":{ "samples":100, "outputfile":"p2_c13_simulation.dat" } }
The JSON document looks like a dictionary of dictionaries. This is precisely the object that will be built when we load this file. We can load a single configuration file with the following code:
import json config= json.load( "config.json" )
This allows us to use config['table']...