Python提供了ConfigParser包来进行配置文件读取。

API:

  • read(filename) 读取ini文件内容
  • sections() 得到所有的section,并以list的形式返回
  • options(section) 得到该section的所有option
  • items(section) 得到该section的所有键值对
  • get(section,option) 得到section中option的值,返回为string类型
  • getint(section,option) 得到section中option的值,返回为int类型,还有相应的getboolean()和getfloat() 函数
  • add_section(section) 添加一个新的section
  • set( section, option, value) 对section中的option进行设置,需要调用write将内容写入配置文件

所谓的sections就是一个配置块。下面是一个配置文件db.ini

[mongo]
db_host = 127.0.0.1
db_port = 27017

[system]
timeout = 2000
interval = 2000

包含mongosystem两个配置块。

配置文件读取:

import configparser as CP
import string
import os
import sys

cf = CP.ConfigParser()

cf.read("db.ini")

# 获取所有的section
secs = cf.sections()

# 遍历sections
for sec in secs:
    print("\nsection [" + sec + "]:")
    # 获取section里的所有配置项
    options = cf.options(sec)
    for o in options:
        print(o+"="+cf.get(sec, o))

结果展示:

读取db_host这一配置项:

print(cf.get("mongo", "db_host"))