configparser 模块
此模块用于生成和修改常见配置文档,当前模块的名称在 python 3.x 版本中变更为 configparser。
来看一个好多软件的常见配置文件格式如下
[DEFAULT] ServerAliveInterval = 45 Compression = yes CompressionLevel = 9 ForwardX11 = yes [bitbucket.org] User = hg [topsecret.server.com] Port = 50022 ForwardX11 = no
解析配置文件
In [1]: import configparser In [2]: conf = configparser.ConfigParser() In [3]: conf.read("conf.ini") Out[3]: ['conf.ini'] In [4]: conf.sections() # 调用sections方法(默认不会读取default) Out[4]: ['bitbucket.org', 'topsecret.server.com'] In [5]: "bitbucket.org" in conf # 判断元素是否在sections列表内 Out[5]: True In [6]: conf["bitbucket.org"]["User"] # 通过字典的形式取值 Out[6]: 'hg' In [7]: conf["topsecret.server.com"]["Port"] Out[7]: '50022' In [8]: conf["DEFAULT"]["Compression"] Out[8]: 'yes' In [9]: topsecret = conf["topsecret.server.com"] ...: In [10]: topsecret["Port"] Out[10]: '50022' In [11]: for key in conf["bitbucket.org"]: # 各个模块也能调用默认值 ...: print(key) ...: user serveraliveinterval compression compressionlevel forwardx11 In [12]: conf["bitbucket.org"]["ForwardX11"] Out[12]: 'yes'
其它增删改查语法
配置文件conf.ini
[group1] k1 = v1 k2 = v2 [group2] k1 = v1
import configparser conf = configparser.ConfigParser() conf.read("conf.ini") # 读 # secs = conf.sections() # print(secs) # options = conf.options("group2") # 获取key # print(options) # # item_list = conf.items("group2") # print(item_list) # # val = conf.get("group1", "k1") # print(val) # 增 # conf.add_section("group3") # conf["group3"]["name"] = "houxingbin" # conf["group3"]["age"] = "22" # conf.write(open("conf.ini", "w")) # 删 # conf.remove_option("group3", "name") # 删除section内的option # conf.remove_section("group3") # 删除section # conf.write(open("conf.ini", "w")) # 改 # conf.set("group1", "k1", "11111") # conf.write(open("conf.ini", "w"))

浙公网安备 33010602011771号