建议40:深入掌握ConfigParser

# -*-  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
'''
原文地址:https://www.cnblogs.com/tychyg/p/4935944.html