ConfigParser

来源:互联网 发布:java enum 反射 编辑:程序博客网 时间:2024/05/17 00:58
# -* - coding: UTF-8 -* -  
import ConfigParser


#实例化 ConfigParser 并加载配置文件
conf = ConfigParser.SafeConfigParser()
conf.read('my.conf')


#获取 section 列表、option 键列表和 option 键值元组列表
print 'all sections:', conf.sections()
print 'options of [db]:', conf.options('db')
print 'items of [ssh]:', conf.items('ssh')


#按类型读取配置信息:getint、 getfloat 和 getboolean
print type(conf.getint('db', 'port'))        # <type 'int'>


#判断 option 是否存在
print conf.has_option('db', 'host')


#设置 option
conf.set('db', 'host','192.168.1.102')


#删除 option
conf.remove_option('db', 'host')


#判断 section 是否存在
print conf.has_section('db')


#添加 section
conf.add_section('new_sect')


#删除 section
conf.remove_section('db')


#保存配置,set、 remove_option、 add_section 和 remove_section 等操作并不会修改配置文件,write 方法可以将 ConfigParser 对象的配置写到文件中
conf.write(open('myapp.conf', 'w'))
conf.write(sys.stdout)




#配置文件如果包含 Unicode 编码的数据,需要使用 codecs 模块以合适的编码打开配置文件。
import ConfigParser
import codecs


conf = ConfigParser.SafeConfigParser()
with codecs.open('my.conf', 'r', encoding='utf-8') as f:
    conf.readfp(f)


print conf.get('db', 'host')
0 0
原创粉丝点击