配置文件的封装

-- 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)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值