configparser模块:用于按一定格式创建配置文件
创建
import configparser config = configparser.ConfigParser() config[‘DEFAULT‘] = {‘default‘: ‘yes‘} config[‘path‘] = {‘userinfo‘: r‘E:\pycharm\学习\day29\userinfo‘} with open(‘userinfo.ini‘, ‘w‘, encoding=‘utf-8‘) as f: config.write(f)
完成后的文件:
[DEFAULT] default = yes [path] userinfo = E:\pycharm\学习\day29\userinfo
查看
print(config.sections()) # [] 因为还没有读取文件 config.read(‘userinfo.ini‘, encoding=‘utf-8‘) print(config.sections()) # [‘path‘] 读出节点 [‘DEFAULT‘]为默认节点 不打印 print(‘path‘ in config) # True 判断某节点是否在配置文件中 print(config[‘path‘][‘userinfo‘]) # E:\pycharm\学习\day29\userinfo 读取节点下的配置项 没有该项目标报错 print(config.get(‘path‘, ‘userinfo‘)) # E:\pycharm\学习\day29\userinfo for k in config[‘path‘]: # 打印‘path‘节点下的配置项的同时还会打印默认节点下的所有项 print(k) # userinfo default print(config.items(‘path‘)) # [(‘default‘, ‘yes‘), (‘userinfo‘, ‘E:\\pycharm\\学习\\day29\\userinfo‘)]
增加
config.read(‘userinfo.ini‘, encoding=‘utf-8‘) config.add_section(‘IP‘) # 增加节点 print(config.sections()) # [‘path‘, ‘IP‘] config.set(‘IP‘, ‘ip‘, ‘192.168.1.1‘) # 给节点增加配置项 config.set(‘path‘, ‘userinfo‘, ‘None‘) # 修改配置项 print(config[‘IP‘][‘ip‘]) # 192.168.1.1 print(config[‘path‘][‘userinfo‘]) # None config.write(open(‘userinfo.ini‘, ‘w‘, encoding=‘utf-8‘)) # 将修改重新写回文件
删除
config.read(‘userinfo.ini‘, encoding=‘utf-8‘) print(config.sections()) # [‘path‘, ‘IP‘] config.remove_section(‘IP‘) # 删除节点 print(config.sections()) # [‘path‘] print(config.items(‘path‘)) # [(‘default‘, ‘yes‘), (‘userinfo‘, ‘None‘)] config.remove_option(‘path‘, ‘userinfo‘) # 删除节点中的配置项 print(config.items(‘path‘)) # [(‘default‘, ‘yes‘)] config.write(open(‘userinfo.ini‘, ‘w‘, encoding=‘utf-8‘)) # 将修改重新写回文件