Commit 02dd70be authored by Raymond Hettinger's avatar Raymond Hettinger

The example for configparser was weird.

parent 6f0d59ba
......@@ -1457,31 +1457,38 @@ Config parsers gained a new API based on the mapping protocol::
>>> parser = ConfigParser()
>>> parser.read_string("""
[DEFAULT]
monty = python
location = upper left
visible = yes
editable = no
color = blue
[phrases]
the = who
full = metal jacket
""")
>>> parser['phrases']['full']
'metal jacket'
>>> section = parser['phrases']
>>> section['the']
'who'
>>> section['british'] = '%(the)s %(full)s %(monty)s!'
>>> parser['phrases']['british']
'who metal jacket python!'
>>> 'british' in section
True
[main]
title = Main Menu
color = green
The new API is implemented on top of the classical API so custom parser
[options]
title = Options
""")
>>> parser['main']['color']
'green'
>>> parser['main']['editable']
'no'
>>> section = parser['options']
>>> section['title']
'Options'
>>> section['title'] = 'Options (editable: %(editable)s)'
>>> section['title']
'Options (editable: no)'
The new API is implemented on top of the classical API, so custom parser
subclasses should be able to use it without modifications.
The INI file structure accepted by config parsers can now be customized. Users
can specify alternative option/value delimiters and comment prefixes, change the
name of the *DEFAULT* section or switch the interpolation syntax. Along with
support for pluggable interpolation, an additional interpolation handler
:class:`~configparser.ExtendedInterpolation` was introduced::
name of the *DEFAULT* section or switch the interpolation syntax.
The is support for pluggable interpolation including an additional interpolation
handler :class:`~configparser.ExtendedInterpolation`::
>>> parser = ConfigParser(interpolation=ExtendedInterpolation())
>>> parser.read_dict({'buildout': {'directory': '/home/ambv/zope9'},
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment