您的位置:首页 > 编程语言 > Python开发

Python配置文件解析器ConfigParser 的基本结构、备注和传参

2011-12-28 23:07 711 查看
ConfigParser模块实现了基本的配置文件解析,在python3.x,这个模块更名为configparser .

1. 配置文件基本结构:

[SectionName]

key1 = value1 (或者是 key1: value1)

key2 = value2

2. 通过以下函数去获取配置信息:

ConfigParser.get(section,option[,raw[,vars]])
返回某一section下指定key 的值

ConfigParser.items(section[,raw[,vars]])
返回包含某一section下所有健值对的一个Dictionary

Note: 实践证明,items()返回的dictionary中不仅包含section下面所有的键值对,还包括:

1). 指定vars 中存在的键值对

2). vars = None的话,指定Section 下面不存在,但DEFAULT section下面存在的键值对

所以如果只想获取指定Section下面的键值对,而是用DEFAULT section 或vars来做一些变量替换的话,要注意里面的一些冗余的键值对。

3. 配置文件中添加备注信息:(这些备注信息在ConfigParser解析时会被忽略)

1). 在空白行添加备注信息,可以使用“;” 或“#” 开头,后面是你的备注信息:

;your comments

# your comments

2). 如果是在有内容的行内添加备注,只能使用“;” 开头。

[SectionName] ;your comments

key=value ;your comments

4. ConfigParser 的传参:

1). 如果同一个section 下面有对应参数的值, 则优先用这个值替换参数

[SectionName]

key = %(god)s is very kind

god= I

在读取key的时候,会用 "I" 来替换“god”

2). 如果同一个section 下面没有对应参数的值, 而在DEFAULT section下有,则用者下面的替换:

[SectionName]

key = %(god)s is very kind

[DEFAULT]

god= I

3). 也可以 在读取配置信息时,用一个包含这个值的Dictionary来实现替换, 字典dictA 里面如果包含了需要替换的参数,则使用dictA里面的值进行替换,否则再按照 1),2)两种情形来替换

[SectionName]

key = %(god)s is very kind

读取时:

dictA = {''god":"I"}

get(SectionName, key , vars = dictA)

小小的记录,如果有新的收获再更新。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: