python读写配置文件

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

写在前面:封装的一个配置文件操作的类,忘指正!

#coding:utf-8

import ConfigParser

class Conf():
    
    def __init__(self,name):
        self.name = name
        self.cp = ConfigParser.ConfigParser()
        self.cp.read(name)
         
            
    def getSections(self):
        return self.cp.sections()
    
    def getOptions(self, section):
        if self.cp.has_section(section):
            return self.cp.options(section)
    
    def getItems(self, section):
        if self.cp.has_section(section):
            return self.cp.items(section)
        
    def getValue(self, section, option):
        if self.cp.has_option(section, option):
            return self.cp.get(section, option)
    
    def setSection(self, section):
        if not self.cp.has_section(section):
            self.cp.add_section(section)
            self.cp.write(open(self.name,'w'))
    
    def setValue(self, section, option, value):
        if not self.cp.has_option(section, option):
            self.cp.set(section, option, value)
            self.cp.write(open(self.name,'w'))
    
    def delSection(self, section):
        if self.cp.has_section(section):
            self.cp.remove_section(section)
            self.cp.write(open(self.name,'w'))
    
    def delOption(self, section, option):
        if self.cp.has_option(section, option):
            self.cp.remove_option(section, option)
            self.cp.write(open(self.name,'w'))
            
    def updateValue(self, section, option, value):
        if self.cp.has_option(section, option):
            self.cp.set(section, option, value)
            self.cp.write(open(self.name,'w'))

if __name__ == "__main__":
    conf = Conf("confx.ini")
    conf.setSection("add")
    conf.setValue("add", "version", "v1.0")
    conf.updateValue("add", "version", "v1.1")
    
    print conf.getItems("add")
    print conf.getSections()
    conf.delSection("add")
    
#-----------------conf.ini--------------------    
#[db]
#db_host = 127.0.0.1
#db_port = 3306
#db_user = root
#db_pass = wells
#
#[concurrent]
#thread = 10
#processor = 20

推荐链接:

http://blog.sina.com.cn/s/blog_4a7218b501009vay.html
http://www.cnblogs.com/MikeZhang/archive/2011/11/19/2255169.html

转载于:https://my.oschina.net/wellsoschina/blog/124223

你可能感兴趣的:(python读写配置文件)