python配置管理,但很可爱。

konfi的Python项目详细描述


康菲

CircleCIPyPIDocumentation Status

Konfi允许您创建类似于 dataclasses。 然后使用这些模板从不同的源加载配置。 Konfi保证加载的配置甚至与模板对应 尽可能确保列表中的项目是正确的类型。

这意味着您不再需要担心配置的有效性, 如果配置正确,它将加载,如果不正确,它将引发 告诉你为什么不。

安装

您可以从PyPI

安装Konfi
pip install konfi

示例

fromtypingimportOptionalimportkonfi@konfi.template()classUserInfo:name:strcountry:Optional[str]@konfi.template()classAppConfig:name:str="konfi"user:UserInfokonfi.set_sources(konfi.YAML("config.yml",ignore_not_found=True),konfi.Env(prefix="app_"),)config=konfi.load(AppConfig)greeting=f"Hello {config.user.name}"ifconfig.user.country:greeting+=f" from {config.user.country}"print(greeting)print(f"Welcome to {config.name}!")

有关更多示例,请参见examples/目录。

文档

如果您准备好跳进去,可以在 Read the Docs

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

推荐PyPI第三方库


热门话题
用户界面java,使用gui连接到另一台计算机/服务器的文件系统   运行sbt的ubuntu返回错误:“javahome需要<path>参数”   java如何在Android中处理许多ImageView而不出现内存问题?   查询中非法字符的java相同URL失败   安卓取消引用可能会产生“java”。lang.NullPointerException'   java中的indexoutofboundsexception“java.lang.ArrayIndexOutOfBoundsException”错误   xml Java将dom保存到文件>文件在程序结束后由另一个进程打开   Java的垃圾收集器是如何工作的?   Java如何筛选值(列表)   java处理字符串我怎样才能像在真实的书籍中一样在上面部分生成“小数字”呢?   java SonarQube是否有一个API来获取所有项目分析的一部分?   java startActivity(intent)什么都不做   JAVAutil。扫描器类Java   java如何从Firebase更新电子邮件?UpdateMail方法已被弃用   java Hibernate。如何正确组织带有注释的onetomany关系?   在java中获得卷标和驱动器号之间的映射(而不是FileSystemView)的解决方法是什么   java查找文件的路径