实用配置系统
fitb的Python项目详细描述
一个实用的python配置系统。
使用fitb,可以指定程序/库/所需的配置选项的集合。fitb然后 帮助您构造配置对象并将它们合并在一起。
配置对象configuration object只是一个dict,因此fitb可以帮助您构建dicts。 进入dict的路径,即进入dict和子区域的键序列,以及选项和 默认值。
快速启动
使用fitb首先要定义一个配置选项集合:
options=[(('my-app','screen'),fitb.Option('width','Width of screen',100)),(('my-app','screen'),fitb.Option('height','Height of screen',200))]
列表中的每个条目都指定了前缀路径和选项本身。从这里我们可以建立一个 默认配置选项:
config=fitb.build_default_config(options)
这给了我们一个这样的对象:
{'my-app':{'screen':{'width':100,'height':200}}}
用它可以做这样的事情:
print(config['my-app']['screen']['width']
或使用子图:
screen_config=config['my-app']['screen']print(screen_config['width'])
也可以合并配置文件,将条目从一个配置添加到另一个配置文件中,可能覆盖退出选项。 看起来是这样:
fitb.merge(dest=config,src={'my-app':{'screen':{'width':400}}})# The `dest` config has been updatedassertconfig['my-app']['screen']['width']==400
这种合并功能非常有用,因为您可以执行如下操作:
- 创建默认配置
- 从文件加载用户配置(例如toml、ini或其他文件)
- 将用户配置合并到默认配置中。