Skip to main content
Join the official 2019 Python Developers SurveyStart the survey!

Dead simple configuration file parser.

Project description

https://travis-ci.org/kisom/pysimpleconfig.svg?branch=master

what?

simpleconfig is a Python module that reads INI files into a dictionary. It is both Python 2 and Python 3 compatible.

why?

I’ve written this code several times for a couple projects; I got sick of copying the file over to new project directories.

how?

Both a parse and parse_string function are provided. The former parses config files, and the latter parses a config file serialised into a string.

return value and example

Both parse() and parse_string return a dictionary (see below) where each section is a key at the top level, and is a dictionary of key=value pairs itself. For example, given the config file:

>>> config = """
# random version information
version = 1.0.5

; last modified 1 April 2001 by John Doe
; example taken from wikipedia
[owner]
name=John Doe
organization=Acme Widgets Inc.

[database]
# use IP address in case network name resolution is not working
server=192.0.2.62
port=143
file="payroll.dat"
"""

Parsing this with simpleconfig yields:

>>> import simpleconfig as sc
>>> cfg = sc.parse_string(config)
>>> cfg['owner']['name']
'John Doe'
>>> cfg.owner.name
'John Doe'

Note that the dictionary type returned by the parse functions is actually a kutils.dicts.AttrDictDict, which is derived from the dict type and can be used wherever a dict can.

license

simpleconfig is released under an ISC license.

author

simpleconfig was written by Kyle Isom <coder@kyleisom.net>.

additional

The module is only tested for compatibility against Python 2.7 and Python 3.3+. There are no guarantees (or attempts) at compatibility with previous version of Python.

The docs are on RTD.

The source for simpleconfig is online:

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for simpleconfig, version 2.0
Filename, size File type Python version Upload date Hashes
Filename, size simpleconfig-2.0-py2-none-any.whl (4.9 kB) File type Wheel Python version py2 Upload date Hashes View hashes
Filename, size simpleconfig-2.0-py3-none-any.whl (4.9 kB) File type Wheel Python version py3 Upload date Hashes View hashes
Filename, size simpleconfig-2.0.tar.gz (2.6 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page