我是靠谱客的博主 风中大叔,最近开发中收集的这篇文章主要介绍Python读写ini配置文件,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

前言:

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

关键点代码的介绍:

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


# 如果你依然在编程的世界里迷茫,
# 不知道自己的未来规划,
# 对python感兴趣,
这里推荐一下我的学习交流圈:895 797 751# 里面都是学习python的,


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配置文件的全部内容,希望文章能够帮你解决Python读写ini配置文件所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(65)

评论列表共有 0 条评论

立即
投稿
返回
顶部