灵活的Python配置。

pycnfg的Python项目详细描述


Pycnfg logo

灵活的Python配置。

Build StatusPyPi versionPyPI StatusDocsTelegram

Pycnfg是执行基于Python的配置的工具。在

  • 纯Python。在
  • 灵活。在

它提供统一的模式来创建任意的Python对象。 这自然允许通过单个文件控制所有参数。在

Logic

详情请参阅 Concepts。在

安装

PyPiPyPi versionPyPI Status

pip install pycnfg
^{pr2}$ 停靠器Docker Pulls
docker run -it nizaevka/pycnfg

Pycnfg在python3.6+上测试。在

文件

Docs

入门

"""Configuration example to produce object."""importpycnfgclassCustomProducer(pycnfg.Producer):"""Specify custom methods to produce object."""def__init__(self,objects,oid):# Mandatory.super().__init__(objects,oid)defset(self,obj,key,val=42):obj[key]=valreturnobjdefprint(self,obj,key='a'):print(obj[key])returnobjdefmethod_id(self,obj,*args,**kwargs):# Some logic..returnobj# Configuration.#   Set `init` object state {'a': 7}.#   Set `producer` class CustomProducer.#   Set `steps` to execute.CNFG={'section_1':{'conf_1':{'init':{'a':7},'producer':CustomProducer,'steps':[('set',{'key':'b','val':42}),('print',{}),('print',{'key':'b'}),('method_id',{}),],},# 'conf_2': {...}}# 'section_2': {...}}if__name__=='__main__':# Execute configuration(s) in priority.objects=pycnfg.run(CNFG)# => 7# => 42# Storage for produced object(s).print(objects['section_1__conf_1'])# => {'a': 7, 'b': 42}

详见文档;)

示例

检查examples folder。在

还要检查^{str1}$mlshell——一个基于Pycnfg的ML框架。在

投稿指南

许可证

Apache许可证,版本2.0LICENSELicense

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

推荐PyPI第三方库


热门话题
java@AfterEach注释在Spring测试中被忽略   散列如何使用bouncy castle在Java中创建SHA512摘要字符串?   java无法使用Okhttp获取响应cookie   100个数的java阶乘   多线程如何在Java中实现对象计数器   java我的精灵不显示背景   java如何在com上应用PanelSlideListener。索特里。滑动面板。SlidengUpPanelLayout SlideUp库   java如何在JDBC中使用WHERE EXISTS函数   java Swing:标签前景中的白色被绘制为黑色   获取java的时间戳。util。另一个java的日期对象为(10/7/14)。util。日期对象(2014年10月7日星期二11:21:00)   java如何在Spring/OpenJPA 1中重新创建用于更新行锁定的选择   java在保存另一个maven项目中的类时,有没有办法让eclipse识别对该类的更改?   java如何解决Spring中的Servlet上下文错误?   java在mongodb中删除记录   显示的java片段与当前片段重叠,而不是替换它