# -*- coding:utf-8 -*- ''' 1、getboolean() 根据一定的规则将配置项的值转换为布尔值 getboolean() 的真值规则: 0、no、false 和off 都会被转义为False 1、yes、true 和on则都被转义为True 其他值都会导致抛出ValueError 异常 在ConfigParser支持的配置文件格式里,有一个[DEFAULT] 节,当读取的配置项在不在指定的节里时,ConfigParser 将会到[DEFAULT] 节中查找 get(section, option[, raw[, vars]]) 中的全名参数vars,查找规则如下: 1)如果找不到节名,就抛出NoSectionError。 2)如果给定的配置项出现在get() 方法的vars 参数中,则返回vars 参数中的值。 3)如果在指定的节中含有给定的配置项,则返回其值。 4)如果在[DEFAULT] 中有指定的配置项,则返回其值。 5)如果在构造函数的defaults 参数中有指定的配置项,则返回其值。 6)抛出NoOptionError。 ''' ''' 示例:C:\example.ini [DEFAULT] in_default = 'an option value in default' conn_str = %(dbn)s://%(user)s:%(pw)s@%(host)s:%(port)s/%(db)s dbn = mysql user = root host=localhost port = 3306 [section1] option1=0 [db1] user = aaa pw=ppp db=example [db2] host=192.168.0.110 pw=www db=example ''' import ConfigParser conf = ConfigParser.ConfigParser() conf.read("C:\example.ini") print conf.getboolean('section1', 'option1') print conf.get('db1', 'conn_str') print conf.get('db2', 'conn_str') ''' False mysql://aaa:ppp@localhost:3306/example mysql://root:www@192.168.0.110:3306/example '''