python 从配置文件读取变量
2018-11-22 本文已影响25人
lzp1234
前言
初学得时候,所有配置都通过系统命令获取:sed 之流。这大概就是反复造轮子。
一段时间后终于理解前辈得话:不要反复造轮子。
遇到一个问题先去想想:有没有类似得包?
conf文件
此次要介绍得是 ConfigParser(python3 导包时为configparser)。
ConfigParser 需要注意得问题:
- 不能区分大小写。
- 重新写入的配置文件不能保留原有配置文件的注释。
- 重新写入的配置文件不能保持原有的顺序。
- 不支持嵌套。
- 不支持格式校验。
- 准备简单得配置文件例子 test.conf:
[default]
name = qqq
age = 2
- 编写python脚本读取这个配置。指定name值为str类型,age值为int类型。
import ConfigParser
conf = ConfigParser.ConfigParser() # 首先实例化一个对象
conf.read("test.conf") # 读取配置文件
name = conf.get("default", "name") # get函数有两个参数:(section, option)。就是conf中得 (dufault, name)
age = conf.getint("default", "age") # get返回得是str类型,getint返回得是int类型
print("name is %s, age is %s" % (name, age))
print("name type is %s, age type is %s" % (type(name), type(age)))
执行结果如下:
image.png
yaml文件
TODO