Package: toml
A Python library for parsing and creatingTOML.The module passesthe TOML test suite.See also:The TOML StandardThe currently supported TOML specificationInstallationTo install the latest release onPyPI,
simply run:pip install tomlOr to install the latest development version, run:git clone https://github.com/uiri/toml.git
cd toml
python setup.py installQuick Tutorialtoml.loadstakes in a string containing standard TOML-formatted data and
returns a dictionary containing the parsed data.>>>importtoml>>>toml_string="""...# This is a TOML document.......title = "TOML Example"......[owner]...name = "Tom Preston-Werner"...dob = 1979-05-27T07:32:00-08:00 # First class dates......[database]...server = "192.168.1.1"...ports = [ 8001, 8001, 8002 ]...connection_max = 5000...enabled = true......[servers]......# Indentation (tabs and/or spaces) is allowed but not required...[servers.alpha]...ip = "10.0.0.1"...dc = "eqdc10"......[servers.beta]...ip = "10.0.0.2"...dc = "eqdc10"......[clients]...data = [ ["gamma", "delta"], [1, 2] ]......# Line breaks are OK when inside arrays...hosts = [..."alpha",..."omega"...]...""">>>parsed_toml=toml.loads(toml_string)toml.dumpstakes a dictionary and returns a string containing the
corresponding TOML-formatted data.>>>new_toml_string=toml.dumps(parsed_toml)>>>print(new_toml_string)title = "TOML Example"
[owner]
name = "Tom Preston-Werner"
dob = 1979-05-27T07:32:00Z
[database]
server = "192.168.1.1"
ports = [ 8001, 8001, 8002,]
connection_max = 5000
enabled = true
[clients]
data = [ [ "gamma", "delta",], [ 1, 2,],]
hosts = [ "alpha", "omega",]
[servers.alpha]
ip = "10.0.0.1"
dc = "eqdc10"
[servers.beta]
ip = "10.0.0.2"
dc = "eqdc10"toml.dumptakes a dictionary and a file descriptor and returns a string containing the
corresponding TOML-formatted data.>>>withopen('new_toml_file.toml','w')asf:...new_toml_string=toml.dump(parsed_toml,f)>>>print(new_toml_string)title = "TOML Example"
[owner]
name = "Tom Preston-Werner"
dob = 1979-05-27T07:32:00Z
[database]
server = "192.168.1.1"
ports = [ 8001, 8001, 8002,]
connection_max = 5000
enabled = true
[clients]
data = [ [ "gamma", "delta",], [ 1, 2,],]
hosts = [ "alpha", "omega",]
[servers.alpha]
ip = "10.0.0.1"
dc = "eqdc10"
[servers.beta]
ip = "10.0.0.2"
dc = "eqdc10"For more functions, view the API Reference below.NoteFor Numpy users, by default the data typesnp.floatXwill not be translated to floats by toml, but will instead be encoded as strings. To get around this, specify theTomlNumpyEncoderwhen saving your data.>>>importtoml>>>importnumpyasnp>>>a=np.arange(0,10,dtype=np.double)>>>output={'a':a}>>>toml.dumps(output)'a = [ "0.0", "1.0", "2.0", "3.0", "4.0", "5.0", "6.0", "7.0", "8.0", "9.0",]\n'>>>toml.dumps(output,encoder=toml.TomlNumpyEncoder())'a = [ 0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0,]\n'API Referencetoml.load(f, _dict=dict)Parse a file or a list of files as TOML and return a dictionary.Args:f: A path to a file, list of filepaths (to be read into single
object) or a file descriptor_dict: The class of the dictionary object to be returnedReturns:A dictionary (or object_dict) containing parsed TOML dataRaises:TypeError: Whenfis an invalid type or is a list containing
invalid typesTomlDecodeError: When an error occurs while decoding the file(s)toml.loads(s, _dict=dict)Parse a TOML-formatted string to a dictionary.Args:s: The TOML-formatted string to be parsed_dict: Specifies the class of the returned toml dictionaryReturns:A dictionary (or object_dict) containing parsed TOML dataRaises:TypeError: When a non-string object is passedTomlDecodeError: When an error occurs while decoding the
TOML-formatted stringtoml.dump(o, f, encoder=None)Write a dictionary to a file containing TOML-formatted dataArgs:o: An object to be converted into TOMLf: A File descriptor where the TOML-formatted output should be storedencoder: An instance ofTomlEncoder(or subclass) for encoding the object. IfNone, will default toTomlEncoderReturns:A string containing the TOML-formatted data corresponding to objectoRaises:TypeError: When anything other than file descriptor is passedtoml.dumps(o, encoder=None)Create a TOML-formatted string from an input objectArgs:o: An object to be converted into TOMLencoder: An instance ofTomlEncoder(or subclass) for encoding the object. IfNone, will default toTomlEncoderReturns:A string containing the TOML-formatted data corresponding to objectoLicensingThis project is released under the terms of the MIT Open Source License. ViewLICENSE.txtfor more information.