python配置文件封装_Python 中 configparser 配置文件的读写及封装,配置文件存放数据,方便修改...

#封装配置文件

from configparser importConfigParserclassHandleConfig:"""配置文件读写数据的封装"""

def __init__(self, filename):""":param filename: 配置文件名"""self.filename=filename

self.config= ConfigParser() #读取配置文件1.创建配置解析器

self.config.read(self.filename, encoding="utf-8") #读取配置文件2.指定读取的配置文件

#get_value获取所有的字符串,section区域名, option选项名

defget_value(self, section, option):returnself.config.get(section, option)#get_int获取整型,section区域名, option选项名

defget_int(self, section, option):returnself.config.getint(section, option)#get_float获取浮点数类型,section区域名, option选项名

defget_float(self, section, option):returnself.config.getfloat(section, option)#get_boolean(译:比例恩)获取布尔类型,section区域名, option选项名

defget_boolean(self, section, option):returnself.config.getboolean(section, option)#get_eval_data 获取列表,section区域名, option选项名

defget_eval_data(self, section, option):returneval(self.config.get(section, option))

@staticmethoddefwrite_config(datas, filename):"""写入配置操作

:param datas: 需要传入写入的数据

:param filename: 指定文件名

:return:"""

#做校验,为嵌套字典的字典才可以(意思.隐私.谈.ce)

if isinstance(datas, dict): #遍历,在外层判断是否为字典

#再来判断内层的 values 是否为字典

for value in datas.values(): #先取出value

if not isinstance(value, dict): #在判断

return "数据不合法, 应为嵌套字典的字典"config= ConfigParser() #1.创建配置解析器---与写入配置操作一致

for key in datas: #写入操作

config[key] =datas[key]     # config 类似于一个空字典

with open(filename,"w") as file: #保存到哪个文件filename=需要指定文件名

config.write(file)#return "写入成功"

#do_config = HandleConfig('testcase.conf')

if __name__ == '__main__':#读取操作

do_config1 = HandleConfig('testcase.conf') #读取那个文件

res = do_config1.get_value("msg", "success_result") #读取什么内容

print(res)#写入操作

do_config = HandleConfig('write_config.ini')

datas={"file path": {"cases_path": "cases.xlsx","log_path": "record_run_result.txt"},"msg": {"success_result": "Pass","fail_result": "Fail"}

}

do_config.write_config(datas,"write_config.ini")pass

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值