python读配置文件的包 ConfigParser
ConfigParser模块介绍:
ConfigParser模块在python中用来读取配置文件,配置文件的格式跟windows下的ini配置文件相似,可以包含一个或多个节(section), 每个节可以有多个参数(键=值)。使用的配置文件的好处就是不用在程序员写死,可以使程序更灵活。
注意:在python 3 中ConfigParser
模块名已更名为configparser
示例:
配置文件 debt_level.conf 如下:
[global]
id=debt_level
name=负债水平相关配置
[debt_monty1]
name=负债金额等级-信用卡
type=segment
lid=9141001003
1=[-inf,0];01级
2=(0,200);02级
3=[200,inf);03级
[debt_monty2]
name=负债金额等级-小贷
type=segment
lid=9141001004
1=[-inf,0];01级
2=(0,200);02级
3=[200,inf);03级
代码如下:
import ConfigParser
def read_conf_file(_file):
label_id_dict = {}
config = ConfigParser.ConfigParser()
config.read(_file)
sections = config.sections()
if "global" not in sections:
raise Exception('no_global')
global_name = config.get("global", "name")
global_id = config.get("global", "id")
print global_name, global_id
sections.remove("global")
desc_list = []
result = []
for class_name in sections:
#获取k,v值 方法1:
#for k in config.options(class_name):
# print k, config.get(class_name, k)
#方法2
for k,v in config.items(class_name):
print k,v
print "*"*30
read_conf_file("debt_level.conf")
运行结果:
负债水平相关配置 debt_level
name 负债金额等级-信用卡
type segment
lid 9141001003
1 [-inf,0];01级
2 (0,200);02级
3 [200,inf);03级
******************************
name 负债金额等级-小贷
type segment
lid 9141001004
1 [-inf,0];01级
2 (0,200);02级
3 [200,inf);03级
******************************