美文网首页
python读写ini配置文件

python读写ini配置文件

作者: white_study | 来源:发表于2018-12-24 21:25 被阅读0次
    前言:

    在日常工作中经常需要读写配置文件,这里将配置文件的读写封装成一个类,供后续使用

    关键点代码的介绍:
    def lock(func):
        def wrapper(self, *args, **kwargs): # self变量,可以调用对象的相关方法
            with Lock():
                return func(self, *args, **kwargs)
    
        return wrapper
    

    1.使用线程锁:防止并发向配置文件写入数据,保证数据的准确性
    2.装饰方法的self参数( def wrapper(self, *args, **kwargs)): self是对象自身,可以用来调用对应的各类成员(虽然这里没用到)

    完整代码:
    # coding:utf-8
    import os
    
    import ConfigParser
    from threading import Lock
    
    
    def lock(func):
        def wrapper(self, *args, **kwargs):  # self变量,可以调用对象的相关方法
            with Lock():
                return func(self, *args, **kwargs)
    
        return wrapper
    
    
    class Config(object):
        """
            读写ini配置文件
        """
    
        def __init__(self, path):
            self.path = path
    
            if not os.path.exists(self.path):
                raise IOError('file {} not found!'.format(self.path))
            try:
    
                self.cf = ConfigParser.ConfigParser()
                self.cf.read(self.path)
            except Exception as e:
                raise IOError(str(e))
    
        def get(self, section, key):
            """读取配置文件数据"""
            return self.cf.get(section, key)
    
        @lock
        def set(self, section, key, value):
            """向配置文件写入数据"""
            self.cf.set(section, key, value)
            with open(self.path, 'w') as f:
                self.cf.write(f)
    
    
    if __name__ == "__main__":
        pass
    
    
    

    相关文章

      网友评论

          本文标题:python读写ini配置文件

          本文链接:https://www.haomeiwen.com/subject/ggdtlqtx.html