Python3的编程配置库。

ConfigMaster的Python项目详细描述


配置主机

Build StatusPyPI versionPyPI DailyDownloadsCoverage Status

什么是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}

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
为@Nonnull注释参数编写java单元测试   对于JAVA,如何从它自己的类调用插入排序来将数组分类到一个单独的类中?   Java中嵌套SQL查询的字符串解析   java在所有带有特定注释的方法上调用带注释的方面   在Java中将base64转换为PDF   无法在Android上强制转换java getApplicationContext()   雅加达ee Java ee:如何获取我的应用程序的URL?   IntelliJ:如何导入的文件夹。java文件作为库?   多线程Java(FX)在播放一种声音的同时,播放另一种声音   网络爬虫我需要将proto3版本中protobuf生成的java代码添加到nutch 1.7中   使用JAXRS注释资源的java Restlet客户端   java如何查找给定月份的日期范围   java Minecraft Bukkit插件:我的小游戏传送机不工作   Java Excel搜索和数组列表工作不正常