Python学习---重点模块之configparse
configparse模块常用于生成和修改常见的配置文档
生成配置模块:用字典写
import configparser config = configparser.ConfigParser() config["DEFAULT"] = {'ServerAliveInterval': '45', 'Compression': 'yes', 'CompressionLevel': '9'} config['USER'] = {} config['USER']['User'] = 'hhh' config['SSH'] = {} topsecret = config['SSH'] topsecret['Host Port'] = '50022' # mutates the parser topsecret['ForwardX11'] = 'no' # same here config['DEFAULT']['ForwardX11'] = 'yes' with open('example.ini', 'w') as configfile: config.write(configfile)
读取配置:config.sections()
import configparser config = configparser.ConfigParser() config.read('example.ini') print(config.sections()) # ['USER', 'SSH'], 默认不dayin[DEFAULT]模块 print(config['USER']) # <Section: USER> print(config['USER']['user']) # hg print(config.defaults()) # 打印默认模块, 打印出来一个有序的字典 print(config.has_section('USER')) # True OrderedDict print(config['DEFAULT']['compressionlevel']) # 9 # 打印默认模块, 打印出来一个有序的字典OrderedDict # 跟字典一样,只打印key的信息 for key in config['DEFAULT']: # print(key, v) 报错, too many values to unpack (expected 2) print(key)
删除整个模块: remove,文件不能修改,只能覆盖,可以重新写入新的文件
import configparser config = configparser.ConfigParser() config.read('example.ini') # 文件不能修改,只能覆盖,可以重新写入新的文件 config.remove_section('SSH') with open('example.ini', 'w', encoding='utf-8') as f: config.write(f) print(config.sections())
删除模块下的某个元素
import configparser config = configparser.ConfigParser() config.read('example.ini') print(config.has_option('USER', 'user')) config.remove_option('USER', 'user') print(config.has_option('USER', 'user')) with open('example.ini', 'w', encoding='utf-8') as f: config.write(f)
修改配置:
import configparser config = configparser.ConfigParser() config.read('example.ini') print(config['USER']['user']) config.set('USER', 'user', 'ftl') print(config['USER']['user']) with open('example.ini', 'w', encoding='utf-8') as f: config.write(f)
作者:小a玖拾柒
-------------------------------------------
个性签名: 所有的事情到最後都是好的,如果不好,那說明事情還沒有到最後~
本文版权归作者【小a玖拾柒】和【博客园】共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利!