简介
configparser 是 Pyhton 标准库中用来解析配置文件的模块,并且内置方法和字典非常接近。Python2.x 中名为 ConfigParser,3.x 已更名小写,并加入了一些新功能。
调用
import configparser
config = configparser.ConfigParser()
config.read("config.ini")
常用方法
# 获取所用的section节点
config.sections() # 返回列表
# 获取指定section的options(即keys)
options = config.options("section_name")
# 获取指点section下指定option的值
val = config.get("section_name", "option")
# 修改某个option的值,如果不存在则会出创建
config.set("section_name", "option", "val") #修改db_port的值为69
# 检查section或option是否存在,返回bool值
config.has_section("section")
config.has_option("section", "option")
# 添加section或option
if not config.has_section("section"): # 检查是否存在该section
config.add_section("section")
if not config.has_option("section", "option"): # 检查是否存在该option
config.set("section", "option", "val")
# 删除section或option
config.remove_section("section") # 整个section下的所有内容都将删除
config.remove_option("section", "option")
# 保存并写入文件
config.write(open("config.ini", "w"))
# 除此以外,可以类似字典用键值对获取对应值,如:
section = config["section"]
option= config["section"]["option"]
其它
[DEFAULT] 一般包含 ini 格式配置文件的默认项,所以 configparser 部分方法会自动跳过这个 section 。
前面已经提到 sections() 是获取不到的,还有删除方法对 [DEFAULT] 也无效。