Python3的编程配置库。
ConfigMaster的Python项目详细描述
什么是configmaster?
configmaster是访问配置文件的简单库
以编程方式。你不必再去查名单了
当您希望加载配置文件时,可以进行dict查找。
相反,文件中的对象作为简单的类属性访问。
支持的内容
configmaster支持以下内置格式:
- yaml配置文件(通过PyYAML模块)
- json配置文件(通过json)
- ini配置文件(通过ConfigParser)
- yaml/json文件的网络版本。
对不同类型配置文件的支持一直在增长 自由叉和添加支持!
待办事项
- [删除:外接程序支持python configparser格式]外接程序 版本1.4.0
- [删除:在1.3.0版中添加了网络化json支持]。
- 添加更多文档字符串
- 制作适当的文档
- [删除:添加测试]在版本1.3.1中添加
如何安装
对于上传到pypi的最新稳定版本,请使用:
pip install configmaster
对于上传到git的最新稳定版本,请使用:
pip install git+ssh://cloning@git.sundwarf.me/SunDwarf/configmaster
对于最新的开发版本,请使用:
pip install git+ssh://cloning@git.sundwarf.me/SunDwarf/configmaster@develop
安装后,建议运行测试。
py.test -rfEsxXw-v--strict test.py
如何使用
configmaster为您处理所有事情。简单地指定 您的文件,值将自动为您加载。
>>> from configmaster import YAMLConfigFile >>> cfg = YAMLConfigFile.YAMLConfigFile("test.yml") # Created automatically if it doesn't exist
也支持网络配置文件。
>>> from configmaster import JSONConfigFile >>> cfg = JSONConfigFile.NetworkedJSONConfigFile("http://example.com/data.json")
要访问配置值,请从配置中获取所需的属性 对象已存储。
# YAML data is {"a": 1, "b": [1, 2], "c": {"d": 3}} >>> cfg.config.a 1 >>> cfg.config.b[1] 2 >>> cfg.config.c.d 3
要填充配置数据,只需将dict传递给初始填充。如果 文件为空,这将为其提供默认值,并返回true。如果它 不是,什么都没发生。注意:如果 网络文件上的exc.networkedfleexception!
>>> pop = cfg.initial_populate({"a": 1, "b": [1, 2], "c": {"d": 3}) >>> if pop: cfg.dump() and cfg.reload() # Dump data and reload from disk.
要保存数据,请运行.dump()。
>>> cfg.dump()
有需要保存的网络文件吗?使用方法 保存到文件。
>>> cfg.save_to_file("example.json")
需要获取configkey的原始dict格式吗?在上面使用.dump()!
>>> cfg.config.dump() {"a": 1, "b": [1, 2], "c": {"d": 3} >>> cfg.config.c.dump() {"d": 3}