Python操作配置文件configparser模块
在实际的开发过程中,我们常有操作ini格式和conf格式配置文件的操作,Python为我们提供了configparser模块,方便我们对配置文件进行读写操作。
config.ini配置文件内容如下:
[email] user = root password = aaaaaa port = 25 host = smtp.126.com [thread] thread = 3
1.读取配置文件
方法 | 说明 |
read(filename) | 直接读取配置文件内容 |
sections() | 以列表的形式返回所有section |
options(section) | 得到对应section下的所有option |
items(section) | 得到对应section下的所有键值对 |
get(section,option) | 得到对应的section中的option的值,并以string的类型返回 |
getint(section,option) | 得到对应的section中的option的值,并以int的类型返回 |
1 # -*- coding:utf-8 -*- 2 import configparser 3 4 cf = configparser.ConfigParser() # 实例化ConfigParser对象 5 6 cf.read("config.ini") # 读取文件 7 8 sections = cf.sections() 9 10 print(sections) # 以列表的形式返回所有的section 11 12 options = cf.options("email") # 返回email section下的所有option 13 14 print(options) 15 16 kvs = cf.items("email") 17 18 print(kvs) # 以键值对的形式返回email section下的所有option 19 20 user = cf.get("email", "user") # 获取email section下user option对应的值 21 port = cf.getint("email", "port") # 获取port对应的int类型的值 22 23 print(user) 24 print(port) 25 26 --------输出结果------- 27 28 ['email', 'thread'] 29 ['user', 'password', 'port', 'host'] 30 [('user', 'root'), ('password', 'aaaaaa'), ('port', '25'), ('host', 'smtp.126.com')] 31 root 32 25
2.写入配置文件
方法 | 说明 |
write(fp) | 将config对象写入到某个ini格式的文件 |
add_section(section) | 添加一个新的section |
set(section, option, value) | 对section中的option进行设置,需要调用write方法将内容写入到文件 |
remove_section(section) | 从配置文件中删除指定的section |
remove_option(section, option) | 从配置文件中删除指定section下的option |
1 # -*- coding:utf-8 -*- 2 import configparser 3 4 cf = configparser.ConfigParser() # 实例化ConfigParser对象 5 6 cf.add_section("testsection") 7 8 cf.set("testsection", "computer", "asus") 9 10 with open("config.ini", "w+") as file: 11 cf.write(file)