一、ConfigParser简介
ConfigParser 是用来读取配置文件的包。配置文件的格式如下:中括号“[ ]”内包含的为section。section 下面为类似于key-value 的配置内容。
[browserType]
browserName1 = Chrome
browserName2 = Firefox
browserName3 = IE
[testServer]
URL = https://www.baidu.com
#URL = www.google.com
括号“[ ]”内包含的为section。紧接着section 为类似于key-value 的options 的配置内容。
二、ConfigParser 初始化对象
使用ConfigParser 首选需要初始化实例,并读取配置文件:
import configParser
config = ConfigParser.ConfigParser()
config.read("ini", encoding="utf-8")
三、ConfigParser常用方法
1、获取所有的section节点
# 获取所用的section节点
import configParser
config = configParser.ConfigParser()
config.read("ini", encoding="utf-8")
print config.sections()
#运行结果
# ['browserType', 'testServer']
2、获取指定section 的options。即将配置文件某个section 内key 读取到列表中:
import configParser
config = configParser.ConfigParser()
config.read("ini", encoding="utf-8")
pvalues = config.options("browserType")
print pvalues
#运行结果
# ['browser1', 'browser2', 'browser3']
3、获取指点section下指点option的值
import configParser
config = configParser.ConfigParser()
config.read("ini", encoding="utf-8")
pvalues = config.get("browserType", "browsername1")
print pvalues
#运行结果
# 'chrome'
4、获取指点section的所用配置信息:items(sectionname)
import configParser
config = configParser.ConfigParser()
config.read("ini", encoding="utf-8")
pvalues = config.items("browserType")
print pvalues
#运行结果
#[('browser1', 'chrome'),('browser2', 'firefox'),('browser3', 'IE')]
5、修改某个option的值,如果不存在则会出创建:set()
# 修改某个option的值,如果不存在该option 则会创建
import configParser
config = configparser.ConfigParser()
config.read("ini", encoding="utf-8")
config.set("browserType", "browserName1", "chrom64") #修改browserName1的值为chrom64
config.write(open("ini", "w"))
6、检查section或option是否存在,bool值:has_section/has_option
import configParser
config = configParser.ConfigParser()
config.has_section("section") #是否存在该section
config.has_option("section", "option") #是否存在该option
7、添加section 和 option:add_section(''section")
import configParser
config = configParser.ConfigParser()
config.read("ini", encoding="utf-8")
if not config.has_section("default"): # 检查是否存在section
config.add_section("default")
if not config.has_option("default", "test_option"): # 检查是否存在该option
config.set("default", "test_option", "testvalues")
config.write(open("ini", "w"))
8、删除section 和 option:remove_section("section")
import configParser
config = configParser.ConfigParser()
config.read("ini", encoding="utf-8")
config.remove_section("default") #整个section下的所有内容都将删除
config.write(open("ini", "w"))
9、写入文件
以下的几行代码只是将文件内容读取到内存中,进过一系列操作之后必须写回文件,才能生效。
import configParser
config = configParser.ConfigParser()
config.read("ini", encoding="utf-8")
#回写文件方式
config.write(open("ini", "w"))