导入模块
import configparser
写入
config = configparser.ConfigParser()
config[
"DEFAULT"] = {
'ServerAliveInterval':
'45',
'Compression':
'yes',
'CompressionLevel':
'9'
}
config[
'bitbucket.org'] = {}
config[
'bitbucket.org'][
'User'] =
'hg'
config[
'topsecret.server.com'] = {}
topsecret = config[
'topsecret.server.com']
topsecret[
'Host Port'] =
'50022'
topsecret[
'ForwardX11'] =
'no'
config[
'DEFAULT'][
'ForwardX11'] =
'yes'
with open(
'example.ini',
'w')
as configfile:
config.write(configfile)
读取
config = configparser.ConfigParser()
config.read(
"example.ini")
print(config.defaults())
print(config.sections())
print(config[
'bitbucket.org'][
'User'])
print(config.options(
"topsecret.server.com"))
print(config.items(
"topsecret.server.com"))
print(config.get(
"topsecret.server.com",
"port"))
修改
print(config.has_section(
"Name"))
config.remove_section(
"Name")
config.add_section(
"Name")
config[
"Name"][
"name"] =
"Tom"
config[
"Name"][
"asname"] =
"Jimi"
config.remove_option(
"Name",
"asname")
config.set(
"Name",
"name",
"Jack")
config.write(open(
"example.ini",
"w"))
附:ini文件:
[DEFAULT]
serveraliveinterval = 45
compression = yes
compressionlevel = 9
forwardx11 = yes
[bitbucket.org]
user = hg
[topsecret.server.com]
host port = 50022
forwardx11 = no
help(configparser)
"""
CLASSES
class ConfigParser(RawConfigParser)
| ConfigParser implementing interpolation.
|
| add_section(self, section)
| Create a new section in the configuration. Extends
| RawConfigParser.add_section by validating if the section name is
| a string.
|
| set(self, section, option, value=None)
| Set an option. Extends RawConfigParser.set by validating type and
| interpolation syntax on the value.
|
| defaults(self)
|
| get(self, section, option, *, raw=False, vars=None, fallback=<object object at 0x0000000002F42120>)
| Get an option value for a given section.
|
| getboolean(self, section, option, *, raw=False, vars=None, fallback=<object object at 0x0000000002F42120>)
|
| getfloat(self, section, option, *, raw=False, vars=None, fallback=<object object at 0x0000000002F42120>)
|
| getint(self, section, option, *, raw=False, vars=None, fallback=<object object at 0x0000000002F42120>)
|
| has_option(self, section, option)
| Check for the existence of a given option in a given section.
| If the specified `section' is None or an empty string, DEFAULT is
| assumed. If the specified `section' does not exist, returns False.
|
| has_section(self, section)
| Indicate whether the named section is present in the configuration.
| items(self, section=<object object at 0x0000000002F42120>, raw=False, vars=None)
| Return a list of (name, value) tuples for each option in a section.
|
| options(self, section)
| Return a list of option names for the given section name.
| popitem(self)
| Remove a section from the parser and return it as
| read(self, filenames, encoding=None)
| Read and parse a filename or a list of filenames.
| Return list of successfully read files.
|
| read_dict(self, dictionary, source='<dict>')
| Read configuration from a dictionary.
|
| read_file(self, f, source=None)
| Like read() but the argument must be a file-like object.
|
| read_string(self, string, source='<string>')
| Read configuration from a given string.
|
| readfp(self, fp, filename=None)
| Deprecated, use read_file instead.
|
| remove_option(self, section, option)
| Remove an option.
|
| remove_section(self, section)
| Remove a file section.
|
| sections(self)
| Return a list of section names, excluding [DEFAULT]
|
| write(self, fp, space_around_delimiters=True)
| Write an .ini-format representation of the configuration state.
|
| clear(self)
| D.clear() -> None. Remove all items from D.
|
| pop(self, key, default=<object object at 0x0000000002F42040>)
| D.pop(k[,d]) -> v, remove specified key and return the corresponding value.
| If key is not found, d is returned if given, otherwise KeyError is raised.
|
| setdefault(self, key, default=None)
| D.setdefault(k[,d]) -> D.get(k,d), also set D[k]=d if k not in D
|
| update(*args, **kwds)
| D.update([E, ]**F) -> None. Update D from mapping/iterable E and F.
| If E present and has a .keys() method, does: for k in E: D[k] = E[k]
| If E present and lacks .keys() method, does: for (k, v) in E: D[k] = v
| In either case, this is followed by: for k, v in F.items(): D[k] = v
|
| keys(self)
| D.keys() -> a set-like object providing a view on D's keys
|
| values(self)
| D.values() -> an object providing a view on D's values
|
"""