Python 配置信息的添加和获取

1.效果如下:

2.代码如下:

from configparser import ConfigParser
import threading

class Config():
    _instance_lock = threading.Lock()
    @classmethod
    def instance(cls, *args, **kwargs):
        if not hasattr(Config, "_instance"):
            with Config._instance_lock:
                if not hasattr(Config, "_instance"):
                    Config._instance = Config(*args, **kwargs)
        return Config._instance
    
    def __init__(self) -> None:
        self.config=ConfigParser()
        self.configpath='./AppConfigs.ini'
        self.config.read(self.configpath,encoding='utf-8')
        self.sec_appsetting='appSettings'

    def getconfig_appSettings(self,key,defualt_value):
        '''
        读取配置
        '''
        self.config.read(self.configpath,encoding='utf-8')
        if not self.config.has_option(self.sec_appsetting,key):
            return defualt_value
        else:
            return self.config.get(self.sec_appsetting,key)

    def setconfig_appSettings(self, key,value):
        '''写入(更新)配置文件'''
        if not self.config.has_section(self.sec_appsetting):
            self.config.add_section(self.sec_appsetting)
        self.config.set(self.sec_appsetting, key, value)
        with open(self.configpath, 'w') as configfile:
            self.config.write(configfile)

def testconfig():
    config= Config.instance()
    config.setconfig_appSettings("key1","value1")
    config.setconfig_appSettings("key2","value2")
    realkey=config.getconfig_appSettings('key2','defualt')
    realkey2=config.getconfig_appSettings('key1','defualt1')
    print(realkey,realkey2+";")

if __name__ == '__main__':
    testconfig()

 

  • 10
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值