参考:http://www.voidspace.org.uk/python/configobj.html
正常的读配置文件的方法是给ConfigObj一个文件名,然后通过字典来访问成员,子段也是一个字典
from configobj import ConfigObj
config = ConfigObj(filename)
#
value1 = config['keyword1']
value2 = config['keyword2']
#
section1 = config['section1']
value3 = section1['keyword3']
value4 = section1['keyword4']
#
# you could also write
value3 = config['section1']['keyword3']
value4 = config['section1']['keyword4']
写配置文件:这里演示一个创建空的ConfigObj,然后设置文件名、值。最后写入文件
from configobj import ConfigObj config = ConfigObj() config.filename = filename # config['keyword1'] = value1 config['keyword2'] = value2 # config['section1'] = {} config['section1']['keyword3'] = value3 config['section1']['keyword4'] = value4 # section2 = { 'keyword5': value5, 'keyword6': value6, 'sub-section': { 'keyword7': value7 } } config['section2'] = section2 # config['section3'] = {} config['section3']['keyword 8'] = [value8, value9, value10] config['section3']['keyword 9'] = [value11, value12, value13] # config.write()
初始化的test.ini文件:
[server]
servername = 192.168.11.1
serverport = 8000
[client_srv]
# 这里是注释
server = localhost
port = 8000
解析文件:
from configobj import ConfigObj
#
conf_ini = "./test.ini"
config = ConfigObj(conf_ini,encoding='UTF8')
#
# 读配置文件
#
print config['server']
print config['server']['servername']
修改配置文件
from configobj import ConfigObj
#
conf_ini = "./test.ini"
config = ConfigObj(conf_ini,encoding='UTF8')
config['server']['servername'] = "127.0.0.1"
config.write()
添加新项:
from configobj import ConfigObj
#
conf_ini = "./test.ini"
config = ConfigObj(conf_ini,encoding='UTF8')
config['new_items'] = {}
config['new_items']['Items1'] = "test items"
config.write()
删除项:
from configobj import ConfigObj
#
conf_ini = "./test.ini"
config = ConfigObj(conf_ini,encoding='UTF8')
del config['client_srv']['port']
config.write()
将配置文件写入到不同的文件:
from configobj import ConfigObj
#
conf_ini = "./test.ini"
config = ConfigObj(conf_ini,encoding='UTF8')
del config['client_srv']['port']
config.filename = "./test1.ini"
config.write()