Package dics :: Module ConfigParserRT
[hide private]
[frames] | no frames]

Module ConfigParserRT
source code

Configuration file parser.

*******************************************************************************
Slightly modified version of the ConfigParser module from the Standard Library,
Python 2.3.  The modifications are to stop the INI files from being utterly
mangled when writing back to them.  Specifically the aim is to preserve the
ordering of sections, and the options within them, thereby allowing the
INI file to be structured in a consistent, logical manner for human-
readability.  Later versions may also preserve comments to some extent.

ConfigParserRT ('Round Trip') is a fully compatible drop-in replacement for the
standard ConfigParser module, the only differences are in the formatting of
written INI files.

Anthony Horton
horton@ast.cam.ac.uk
*******************************************************************************

A setup file consists of sections, lead by a "[section]" header,
and followed by "name: value" entries, with continuations and such in
the style of RFC 822.

The option values can contain format strings which refer to other values in
the same section, or values in a special [DEFAULT] section.

For example:

    something: %(dir)s/whatever

would resolve the "%(dir)s" to the value of dir.  All reference
expansions are done late, on demand.

Intrinsic defaults can be specified by passing them into the
ConfigParser constructor as a dictionary.

class:

ConfigParser -- responsible for parsing a list of
                configuration files, and managing the parsed database.

    methods:

    __init__(defaults=None)
        create the parser and specify a dictionary of intrinsic defaults.  The
        keys must be strings, the values must be appropriate for %()s string
        interpolation.  Note that `__name__' is always an intrinsic default;
        it's value is the section's name.

    sections()
        return all the configuration section names, sans DEFAULT

    has_section(section)
        return whether the given section exists

    has_option(section, option)
        return whether the given option exists in the given section

    options(section)
        return list of configuration options for the named section

    read(filenames)
        read and parse the list of named configuration files, given by
        name.  A single filename is also allowed.  Non-existing files
        are ignored.

    readfp(fp, filename=None)
        read and parse one configuration file, given as a file object.
        The filename defaults to fp.name; it is only used in error
        messages (if fp has no `name' attribute, the string `<???>' is used).

    get(section, option, raw=False, vars=None)
        return a string value for the named option.  All % interpolations are
        expanded in the return values, based on the defaults passed into the
        constructor and the DEFAULT section.  Additional substitutions may be
        provided using the `vars' argument, which must be a dictionary whose
        contents override any pre-existing defaults.

    getint(section, options)
        like get(), but convert value to an integer

    getfloat(section, options)
        like get(), but convert value to a float

    getboolean(section, options)
        like get(), but convert value to a boolean (currently case
        insensitively defined as 0, false, no, off for False, and 1, true,
        yes, on for True).  Returns False or True.

    items(section, raw=False, vars=None)
        return a list of tuples with (name, value) for each option
        in the section.

    remove_section(section)
        remove the given file section and all its options

    remove_option(section, option)
        remove the given option from the given section

    set(section, option, value)
        set the given option

    write(fp)
        write the configuration state in .ini format



Classes [hide private]
Error Base class for ConfigParser exceptions.
NoSectionError Raised when no section matches a requested option.
DuplicateSectionError Raised when a section is multiply-created.
NoOptionError A requested option was not found.
InterpolationError Base class for interpolation-related exceptions.
InterpolationMissingOptionError A string substitution required a setting which was not available.
InterpolationSyntaxError Raised when the source text into which substitutions are made does not conform to the required syntax.
InterpolationDepthError Raised when substitutions are nested too deeply.
ParsingError Raised when a configuration file does not follow legal syntax.
MissingSectionHeaderError Raised when a key-value pair is found before any section header.
RawConfigParser  
ConfigParser  
SafeConfigParser  

Variables [hide private]
DEFAULTSECT  
MAX_INTERPOLATION_DEPTH  

Variables Details [hide private]

DEFAULTSECT

Value:
'DEFAULT'                                                              
      

MAX_INTERPOLATION_DEPTH

Value:
10