python 读写 .ini 配置文件

来源:互联网 发布:淘宝卖家发货流程 编辑:程序博客网 时间:2024/04/28 07:47
# coding=UTF-8
import ConfigParser

class MyClass(object):
    '''
    取配置文件
    '''
    def __init__(self):
        self.path = "../config/config.ini"  
        try :
            self.cf = ConfigParser.ConfigParser()  
            self.cf.read(self.path)
        except :
            print "except"
    def get(self, section , option):
        if not self.cf.has_section(section): return
        if not self.cf.has_option(section, option): return
        s = self.cf.get(section, option)
        return s
    def getDefault(self, key):
        ac = "SYSCONF"
        return self.get(ac, key)
    
    def add(self, section, option, value):
        if self.cf.has_section(section): # 追加内容
            if not self.cf.has_option(section, option):
                self.cf.set(section, option, value)
                self.save("r+")
            else :
                self.update(section, option, value)
        else: # 添加新的 section
            if self.cf.has_option(section, option):
                self.update(section, option, value)
            else :
                self.cf.add_section(section)
                self.cf.set(section, option, value)
                self.save("w")
                
    def update(self, section, option, value):
        self.cf.set(section, option, value)
        self.save("w")
        
    def removeSection(self, section):
        self.cf.remove_section(section)
        self.save("w")
        
    def removeOption(self, section, option):
        self.cf.remove_option(section, option)
        self.save("w")
    def save(self, op):
        self.cf.write(open(self.path, op))
if __name__ == "__main__":
    m = MyClass()
    
    section = "ddd3"
    option = "test1322"
    
    m.removeSection(section)
#    m.removeOption(section, option)
#    m.add(section, option, "dsfsdf111")
#    m.update(section, option, "789456qaaa")


原创粉丝点击