# configparse 模块
# 一种处理配置文件的一种机制
# 配置文件的格式要与ini文件格式类似。。。。就是ini,必须要有组。
import configparser
config = configparser.ConfigParser()
config['DEFAULT'] = {'equimenttype' : 1, 'ppp' : 'yes'} # 键为组名
config['UserInfo'] = {'username': 'why', 'pas':123}
with open('test.ini', mode='w', encoding='utf-8') as f:
config.write(f) # 生成一个confiparse的文件
# test.ini文件样子
# [DEFAULT]
# ppp = yes
# equimenttype = 1
#
# [UserInfo]
# pas = 123
# username = why
# 查看test.ini文件内容
import configparser
config = configparser.ConfigParser()
config.read('test.ini') # 加载ini文件
print(config.sections()) # ['UserInfo'] 列出组名 DEFAULT组名是关键字,默认不会显示DEFAULT组名
print(config['UserInfo']['username']) # why
print(config.get('UserInfo', 'username')) # why
for key in config['UserInfo']: # 如果设置了DEFAULT节点组,则从其他组找键值时,都会找到DEFAULT的节点下的键值
print(key)
# 修改test.ini文件内容
import configparser
config = configparser.ConfigParser()
config.read('test.ini') # 加载配置文件
config.add_section('yuan') #增加组名yuan
config.remove_section('UserInfo') # 删除一个组
config.remove_option('DEFAULT', 'equimenttype') # 从一个组中删除已个配置项
config.set('UserInfo', 'k1', '1111') # 在UseInfo组中增加一个配置项为k1值为1111
with open('new2.ini', mode='w', encoding='utf-8') as f:
config.write(f) # 改完后必须写入到文件中
import os
os.remove('test.ini')
os.rename('new2.ini', 'test.ini')
![]()