版权声明:原创不易,本文禁止抄袭、转载需附上链接,侵权必究!
目录
- 一、配置信息写入
- 二、读取配置信息
- 三、修改配置信息
- 四、配置引擎总结
- 五、作者Info
一、配置信息写入
配置信息初始化
定义配置引擎类和初始化方法,其中有两个属性,配置实例对象及配置文件路径:
import configparser
class ConfigEngine(object):
def __init__(self, config_path):
self.cf = configparser.ConfigParser()
self.config_path = config_path
将配置信息写入到配置文件中,该方法有三个形参,category(配置信息类别),name(配置字段名称),value(配置字段值):
def write_to_config(self, category, name, value):
self.cf.add_section(category)
self.cf.set(category, name, value)
self.cf.write(open(self.config_path, "w+"))
比如现在我们要将邮箱的配置信息写入到配置文件config.ini中,以阿里邮箱为例,可以这样调用:
if __name__ == '__main__':
config_path = 'config.ini'
config_engine = ConfigEngine(config_path)
config_engine.write_to_config('EMAIL', 'host', 'smtp.qiye.aliyun.com')
config_engine.write_to_config('EMAIL', 'port ', '25')
………………
查看配置文件信息:
二、读取配置信息
读取配置文件config.ini中的配置信息,该方法有两个参数,category(配置信息类别),name(配置字段名称):
def get_value(self, category, name):
try:
self.cf.read(self.config_path, encoding='gbk')
return self.cf.get(category, name)
except KeyError:
print('读取失败!')
return 'error'
调用方式和上面是相似的,传入对应参数就行
三、修改配置信息
修改配置文件config.ini中的配置信息,该方法的参数和配置信息写入方法的参数是相同的,没有add_section()方法,增加了一个read()方法:
def modify_config(self, category, name, value):
self.cf.read(self.config_path)
self.cf.set(category, name, value)
self.cf.write(open(self.config_path, "w+"))
调用方式和上面是一样的,传入对应参数就行
四、配置引擎总结
本篇文章讲述了如何使用库configparser编写配置脚本引擎,可以将比较重要的配置数据分离,提高编程效率和减小后期维护
当配置信息改变时,比如某个客户的邮箱信息改变了,配置数据比较少时,我们完全可以手动打开配置文件更改,但是当数据量非常大时,我们可能需要调用脚本去更改配置信息
其实这个配置脚本引擎就是做了一层封装,我们只需要编写最少的代码,导入这个配置引擎包,调用相应方法,传入参数即可实现需求的功能,简单且方便,可以当成依赖包使用,与邮箱脚本引擎等配套使用
五、作者Info
Author:小鸿的摸鱼日常,Goal:让编程更有趣!
专注于算法、爬虫,网站,游戏开发,数据分析、自然语言处理,AI等,期待你的关注,让我们一起成长、一起Coding!
版权说明:本文禁止抄袭、转载 ,侵权必究!