美文网首页
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