配置文件,较正规的称呼为运行控制文件,存放程序的相关信息,甚至可以为控制命令,在程序启动时开始解析。Python语言中, 标准库 ConfigParser 模块提供一套 API 来读取和操作配置文件
配置文件格式
- 包含一个或多个section,每个section有属于自己的option,即键值对
- 使用#和;注释
- 每个option 分隔符= 或: 两端的空格会被忽略
简单conf配置文件
[desired_caps] #section
platformName=Android #key=value键值对
platformVersion=6.0
appPackage=*****
deviceName=80QBCPF22CGR
appActivity=*****
unicodeKeyboard=true
resetKeyboard=false
noReset=false
ConfigParser 的常用基本操作
插播查看API的小技巧
python -m pydoc -p 4567(针对python3.3以下版本)
python -m pydoc -b(针对python3.3以上版本) ```
- python导入模块
`import configparser `
- 实例化ConfigParser及加载配置文件
conf=configparser.ConfigParser()
conf.read(CONFIG_PATH) #CONFIG_PATH配置文件存放路径,但配置文件中存在中午,注意加上编码声明,即encoding="utf-8"
- 获取section及option信息
conf.sections() #获取配置文件所有的section
conf.get(section_name,option) #获取指定section和option的值
conf.items(section_name) #获取指定section下所有的键值对,列表形式返回
conf.options(section_name)#获取指定section下所有的关键字,列表形式返回
- 设置section及option信息
conf.set(section,option,value) #设置section及键值对
conf.add_section(section_name)#新增section项
- 删除section及option信息
conf.remove_section(section)#删除指定section
conf.remove_option(section,option)#删除指定section下的option键值对
- 判断section及option是否存在
conf.has_section(section_name)#判断section是否存在,True or False
conf.has_option(section_name,option)#判读指定section下是否有指定option,True or False
**项目及实践**
  appium自动化框架、命令解析脚本
**遇到的问题**
  获取到配置文件的键值对转化成字典类型,驼峰式的关键字全变为小写字母。查看源码,如下,继承ConfigParser类,重写该方法即可
```def optionxform(self, optionstr):
return optionstr.lower()