python读取配置文件

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

# 定义config分组 [config] platformName=Android appPackage=com.romwe appActivity=com.romwe.SplashActivity # 定义cmd分组 [cmd] viewPhone=adb devices startServer=adb start-server stopServer=adb kill-server # 定义log分组 [log] log_error=true

基本的读取操做:python

  • -read(filename)               直接读取文件内容
  • -sections()                      获得全部的section,并以列表的形式返回
  • -options(section)            获得该section的全部option
  • -items(section)                获得该section的全部键值对
  • -get(section,option)        获得section中option的值,返回为string类型
  • -getint(section,option)    获得section中option的值,返回为int类型,还有相应的getboolean()和getfloat() 函数。

在对配置文件进行读写操做前,咱们须要先进行如下两个操做:swift

一、实例化ConfigParser对象:app

# 实例化configParser对象 cf = configparser.ConfigParser()

二、读取配置文件函数

# 读取config.ini文件 cf.read(config.ini)

而后进行配置文件的读取操做。学习

以get为例,示例代码以下:spa

# 定义方法,获取config分组下指定name的值 def getConfigValue(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)方法,能够获取指定分组下指定名称的值,其余方法相似,可参照着尝试。code

基本的写入操做:orm

  • -write(fp)  将config对象写入至某个 .init 格式的文件  Write an .ini-format representation of the configuration state.
  • -add_section(section)   添加一个新的section
  • -set( section, option, value   对section中的option进行设置,须要调用write将内容写入配置文件
  • -remove_section(section)  删除某个 section
  • -remove_option(section, option) 

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

# 定义方法,修改config分组下指定name的值value def setConfigValue(self, name, value): cfg = self.cf.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=true log_error=TRUE log_error=1 log_error=yes

以上就是我初次学习的一点记录,若有错误的地方,但愿你们慷慨指出,我会及时改正,若是本篇对你有些帮助,但愿给我点个赞哦!接下来我会继续python的学习道路,但愿你们于我同行。

相关文章
相关标签/搜索