Better INI parser for Python
iniparse is a INI parser for
Python
which is:
ConfigParser:
Backward compatible implementations of ConfigParser,
RawConfigParser, and SafeConfigParser
are included that are API-compatible with the Python standard
library.cfg.user.name), or using container syntax
(cfg['user']['name']).It is very useful for config files that are updated both by users and by programs, since it is very disorienting for a user to have her config file completely rearranged whenever a program changes it. iniparse also allows making the order of entries in a config file significant, which is desirable in applications like image galleries.
Website: http://code.google.com/p/iniparse/
>>> from iniparse import INIConfig
>>> cfg = INIConfig(file('options.ini'))
>>> print cfg.playlist.expand_playlist True >>> print cfg.ui.width 150 >>> cfg.ui.width = 200 >>> print cfg['ui']['width'] 200
>>> print cfg [playlist] expand_playlist = True [ui] display_clock = True display_qlength = True width = 200
>>> from iniparse import ConfigParser
>>> cfgpr = ConfigParser()
>>> cfgpr.read('options.ini')
>>> print cfgpr.get('ui', 'width')
150
>>> cfgpr.set('ui', 'width', 175)
>>> print cfgpr.data.playlist.expand_playlist True >>> cfgpr.data.ui.width = 200 >>> print cfgpr.data.ui.width 200
>>> from iniparse import BasicConfig >>> n = BasicConfig() >>> n.x = 7 >>> n.name.first = 'paramjit' >>> n.name.last = 'oberoi' >>> print n.x 7 >>> print n.name.first 'paramjit' >>> print n name.first = paramjit name.last = oberoi x = 7
>>> from iniparse import INIConfig >>> i = INIConfig() >>> del n.x # since INI doesn't support top-level values >>> i.import_config(n) >>> print i [name] first = paramjit last = oberoi