python读取配置文件

转载:https://my.oschina.net/u/3041656/blog/793467

配置文件作为一种可读性很好的格式,非常适用于存储程序中的配置数据。在每个配置文件中,配置数据会被分组(比如"config"和”cmd“).每个分组在其中指定对应的各个变量值,,如下:

#定义congig分组

[congig]

platformName=Android

appPackage=com.remwe

appActivity=com.remove.SplashActivity

#定义cmd分组

[cmd]

viewPhone=adb devices

startServer=adb start-server

stopServer=adb kill-server

#定义log分组

[log]

log_error=true

基本的读取操作:

1)-read(filename)   直接读取文件内容

2)sections()     得到该section,并以列表的形式返回

3)options(section) 得到该section的所有option

4)-items(section)  得到该section的所有键值对

5)-get(section,option)  得到section中option的值,返回为string类型

6)-getint(section,option)  得到section中option的值,返回为int类型,还有相应的getboolean()和getfloat()函数

对配置文件进行操作前。我们需要进行以下两个操作:

1、实例化ConfigParser对象

#实例化configParser对象

cf=config.ConfigParser()

2、读取配置文件

#读取config.ini文件

cf.read(config.ini)

然后进行配置文件的读取操作

以get为例,实例代码如下:

#定义方法,获取config分组下指定name的值

def getConfigVValue(self,name):

    value=self.cf.get("config",name)

    return(value)

#定义方法,获取cmd分组下指定name的值

def getCmdValue(self,name):

    value=self.cf.get("cmd",name)

    return(value)

通过get(section,option)方法,可以获取指定分组下指定名称的值,其他方法类似,可参照着尝试

基本写入操作:

1)-write(fp)将config对象写入至某个.ini格式的文件

2)-add_section(section)添加一个新的section

3)-set(section,option,value) 对section中的option进行配置,需要调用write将内容写入配置文件

4)-remove_section(section)删除某个section

5)-remove_option(section,option) 删除某个section下的option

以set(section,option,value)为例,示例代码:

#定义方法,修改config分组下指定name的值value

def setConfigValue(self,name,value):

    cfg=self.set("config",name,value)

    fp=open(r'config.ini','w')

   cfg.write(fp)

配置文件中的名字是不区分大小写的,如下两个是等价的:

#不区分大小写,以下两个鞥加,都获取appActivity的值

self.cf.get("config",”appActivity“)

self.cf.get("config","APPACTIVITY")

在解析时,getboolean()方法查找任何可行的值,例如以下几个都是等价的:

#以下却不知都是等价的为ture

[log]

log_error=ture

log_error=TURE

log_error=1

log_error=yes

原文地址:https://www.cnblogs.com/yuany66/p/12197320.html