configparser模块:读取配置文件的包,配置文件由章节(section[sectionName])、键、值组成。(key=value or key: value),其中key=value通过被称为option
1、新建一个config.ini文件
1 [wework] 2 corp_id = 111111 3 contact_secret = 11111 4 meeting_room_secret = 1111 5 schedule_secret = 11111 6 hahaha: hohoho
2、基本用法:
#!/usr/bin/env python # -*- coding: utf-8 -*- # @File : config.py # @Author: ttwang # @Date : 2021/6/28 # @Desc : configparser模块学习 import configparser import os # 获取config.ini文件 base_path = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) config_file_path = os.path.join(base_path,"config.ini") # 一、读取config_ini中章节(section)、键(option)、值(value) # 1 创建configparser实例 config = configparser.ConfigParser() # 2 读取config.ini配置文件 config.read(config_file_path) # 3 获取config.ini文件中的章节(section) print(config.sections()) # 本例中打印为:['wework'] # 4 获取config.ini文件指定section的option,即key=value中key print(config.options('wework')) # 4中打印:['corp_id', 'contact_secret', 'meeting_room_secret', 'schedule_secret', 'hahaha'] # 5 获取config.ini文件中指定section的option值,即key=value中的value print(config.get('wework','corp_id')) # 6 获取配置文件中对应章节的所有键值对 print(config.items('wework')) # 6中打印:[('corp_id', '55555'), ('contact_secret', '11111'), ('meeting_room_secret', '1111'), ('schedule_secret', '11111'), ('hahaha', 'hohoho')] # 二、往config_ini写入章(seciton)、键(option)、值(value) # 1 增加section, config.add_section("wechat") # 2 往配置文件的[wechat]章节下加入键值 config.set("wechat",'name','ttwang') # 3 保存 with open(config_file_path,"w+") as f: config.write(f)
3、简单的实例化:
1)学习参考:
https://github.com/a376230095/wwork_api_interface_test2)更规范的可以学习:https://blog.csdn.net/qq_35653145/article/details/106042406
#!/usr/bin/env python # -*- coding: utf-8 -*- # @File : config.py # @Author: ttwang # @Date : 2021/6/28 # @Desc : 读取配置文件的封装类 import configparser import os class ConfigIni: # 获取项目的绝对路径 BASE_PATH = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) # 获取配置文件config.ini的路径 config_file_path = os.path.join(BASE_PATH,"config.ini") def __init__(self,file_path=config_file_path): # 为了让写入文件的路径是唯一值,因此这样定义 self.config_file_path= file_path # 实例化configparser对象 self.cf = configparser.ConfigParser() # 读取配置文件 self.cf.read(file_path) # 获取配置文件中的option值,即key=value中的value def get_key(self, section, option): value = self.cf.get(section, option) return value # 新增配置文件中的option值,即key=value中的value def set_value(self, section, option, value): self.cf.set(section, option, value) with open(self.config_file_path, "w+") as f: self.cf.write(f) # 配置对象为单例模式,其他模块直接引用 cf = ConfigIni() if __name__ == "__main__": print(cf.get_key("wework", "contact_secret"))