configparser解析配置文件
[DEFAULT]ServerAliveInterval = 45 Compression = yesCompressionLevel = 9ForwardX11 = yes[bitbucket.org]User = hg[topsecret.server.com]Port = 50022ForwardX11 = no
2.解析配置文件
>>> import configparser # 导入模块>>> config = configparser.ConfigParser() #实例化(生成对象)>>> config.sections() #调用sections方法[]>>> config.read('example.ini') # 读配置文件(注意文件路径)['example.ini']>>> config.sections() #调用sections方法(默认不会读取default)['bitbucket.org', 'topsecret.server.com']>>> 'bitbucket.org' in config #判断元素是否在sections列表内True>>> 'bytebong.com' in configFalse>>> config['bitbucket.org']['User'] # 通过字典的形式取值'hg'>>> config['DEFAULT']['Compression']'yes'>>> topsecret = config['topsecret.server.com']>>> topsecret['ForwardX11']'no'>>> topsecret['Port']'50022'>>> for key in config['bitbucket.org']: print(key) # for循环 bitbucket.org 字典的key,注意,DEFAULT中的也会出来,因为DEFAULT中的配置信息默认就是给下面的模块中的内容使用的...usercompressionlevelserveraliveintervalcompressionforwardx11>>> config['bitbucket.org']['ForwardX11']'yes'
3.其他增删改查方法
[group1] # 支持的两种分隔符“=”, “:”k1 = v1k2:v2[group2]k1 = v1>>> import configparser>>> config = configparser.ConfigParser()>>> config.read('i.cfg')['i.cfg']# ########## 读 ##########>>> secs = config.sections()>>> print(secs)['group1', 'group2']>>> options = config.options('group2') # 获取指定section的keys>>> print(options)['k1']>>>item_list = config.items('group2') # 获取指定 section 的 keys & values ,key value 以元组的形式>>>print(item_list)[('k1', 'v1')]>>>val = config.get('group1','k1') # 获取指定的key 的value>>> print(val)v1>>>val = config.getint('group1','key')# ########## 改写 ##########>>>sec = config.remove_section('group1') # 删除section 并返回状态(true, false)>>> print(sec)True>>>config.write(open('i.cfg', "w")) # 对应的删除操作要写入文件才会生效>>>sec = config.has_section('vita')>>> print(sec)False>>>sec = config.add_section('vita')>>>config.write(open('i.cfg', "w")) # 查看内容[group2]k1 = v1[vita]>>>config.set('group2','k1',"11111")>>>config.set('group2','k1',"2222")>>>config.write(open('i.cfg', "w"))查看内容[group2]k1 = 11111k2 = 222[vita]>>>config.remove_option('group2','age')>>>config.write(open('i.cfg', "w"))
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。