python中ConfigParse模块的用法

ConfigParse

ConfigParse模块是python中用来读配置文件的,用法很简单。在Python2.x 中名为 ConfigParser,3.x 已更名小写,并加入了一些新功能。

如下是python3环境下的示例代码。

这里假设我们这里有一个配置文件config.txt,内容如下:

[DEFAULT]
name = xx
age = xx 
scopt = xx

[people1]
name = wu
age = 18
sex = man

[people2]
name = wang
age = 28
sex = men

[people3]
name = li
age = 38
sex = man

[ ]包含的为section,section下是key-value值。可以是 key=value的格式,也可以是 key : value 的格式。[DEFAULT] 一般包含 ini 格式配置文件的默认项,所以 configparser 部分方法会自动跳过这个 section 。 sections() 方法是获取不到DEFAULT的,还有clear()以及remove_option()方法对 [DEFAULT] 也无效:

import configparser

conf=configparser.ConfigParser()
conf.read("config.txt")

#获取所有的sections
print("获取所有的sections")
print(conf.sections())
print("\n")

#获取指定section的key-value,返回的是一个数组
print("获取指定section的key-value,返回的是一个数组")
print(conf.items("people1"))
print("\n")

#获取指定section的key-value
print("获取指定section的key-value")
name=conf.get("people2","name")
age=conf.get("people2","age")
sex=conf.get("people2","sex")
print("name is :"+name)
print("age is :"+age)
print("sex is :"+sex)
print("\n")

#获取指定section的keys
print("获取指定section的keys")
print(conf.options("people3"))
print("\n")

#修改或添加指定section的指定key的value值
print("修改指定section的指定key的value值")
conf.set("people1","name","wu")
conf.set("people1","scope","98")
name=conf.get("people1","name")
scope=conf.get("people1","scope")
print("name is :"+name)
print("scope is :"+scope)
print("\n")

#添加section
print("添加section")
conf.add_section("people4")
conf.set("people4","name","liu")
conf.write(open("config.txt","w"))      #一定要写入才能生效
name=conf.get("people4","name")
print("name is :"+name)
print("\n")

#删除section
print("删除section")
conf.remove_section("people4")
conf.write(open("config.txt","w"))      #一定要写入才能生效


#移除指定section的指定key
conf.remove_option("people2","name")
conf.write(open("config.txt","w"))      #一定要写入才能生效

#清楚[DEFAULT]之外的所有内容
conf.clear()
conf.write(open("config.txt","w"))      #一定要写入才能生效

python中ConfigParse模块的用法_第1张图片 

 

参考文章:Python3 中 configparser 模块解析配置的用法详解

你可能感兴趣的:(Python语法学习)