python配置文件,一般包含文件后缀名是: .ini , .conf, .cfg
读写配置文件前,需要先导入: import configparse
1. 先创建一个stuinfo.conf配置文件,内容如下:
[name]
zhangsan=张三
lisi = 李四
[Age]
lisi=18
zhangsan=19
[sex]
lisi= male
zhangsan=male
2. 开始读取配置文件:
先创建一个ConfigParser对象
configobj = configparser.ConfigParser()
读取配置文件(该步不可省)
configobj.read("stuinfo.conf", encoding="utf8")
以下则为常用方法:
1) 读取配置文件下[name]中的内容
configobj.items(section="name")
返回结果会是: [('zhangsan', '张三'), ('lisi', '李四')] 列表类型
2 ) 读取配置文件[name]下 lisi 的值
configobj.get(section='name', option='lisi')
3) 获取配置文件中所有的section:
configobj.sections()
返回结果是: ['name', 'Age', 'sex']
4) 判断配置文件内容中是否包含:section = "Grade"
configobj.has_section(section='Grade')
按照本文中的配置文件内容,则返回结果是:False
5) 判断配置文件内容中在section = "name"下是否有option="zhouwu"
configobj.has_option(section="name", option="zhouwu")
类似4),结果返回也是: False
6) 如果想要修改某个section下某个option的值:
假设修改section = "class" 下 option=“lisi”的值为:“Three”
if configobj.has_option("class"): # 判断=配置文件是否有section是class
# 如果配置文件存在class项,那么直接修改option=lisi的值
configobj.set(section="class", option="lisi", value="Three")
else:
# 添加section
configobj.add_section(section="class")
configobj.set(section="class", option="lisi", value="Three")
# 修改完成后,需要进行保存
with open(cfg_name, "w+") as f:
configobj.write(f)
注意:如果,编辑了配置文件内容:新增内容,编辑内容,删除内容,都需要进行保存操作,否则会不生效