-- coding: utf-8 --
“”"
@Time : 2019/7/23 17:52
@Auth : 潇潇
@File : configuration_file_frame.py
@IDE : PyCharm
@Motto: your story may not have such a happy beginning ,
but that doesn’t make who you are .
It is the rest of your story,
who you choose to be
“”"
from configparser import ConfigParser
class HandleConfigureFile:
“”"
配置文件封装类
“”"
def __init__(self, filename):
self.filename = filename
self.config = ConfigParser()
self.config.read(filename, encoding="utf-8")
def get_value(self, section, option):
"""
获取配置文件值
:param section:区域名
:param option: 选项名
:return:
"""
return self.config.get(section, option)
def get_int(self, section, option):
"""
获取配置文件int类型数据方法
:param section: 区域名
:param option: 选项名
:return:
"""
return self.config.getint(section, option)
def get_float(self, section, option):
"""
获取配置文件float类型数据方法
:param section: 区域名
:param option: 选项名
:return:
"""
return self.config.getfloat(section, option)
def get_boolean(self, section, option):
"""
获取配置文件布尔型数据方法
:param section:
:param option:
:return:
"""
return self.config.getboolean(section, option)
def get_universal(self, section, option):
"""
获取配置文件数据使用eval函数还原初始类型
:param section: 区域名
:param option: 选项名
:return:
"""
return eval(self.config.get(section, option))
@staticmethod
def write_file(filename, data):
"""
写入配置文件方法
:param filename: 要写入的文件名
:param data: 要写入文件的数据
:return:
"""
if isinstance(data, dict):
for value in data.values():
if not isinstance(value, dict):
return "要写入的不符合嵌套字典类型"
config = ConfigParser()
for key in data:
config[key] = data[key]
with open(filename, mode='a', encoding='utf-8') as file:
config.write(file)
if name == ‘main’:
one_object = HandleConfigureFile(“configuration.conf”)
# debug_value = one_object.get_universal(“debugging path”, “valuefour”)
# print(“配置文件取值:{},值得类型:{}”.format(debug_value, type(debug_value)))
data_one = {"world path":{"name": "潇潇", "age": 25}}
one_object.write_file("configone.conf", data_one)