跳转到主要内容

无痛苦的YAML配置。

项目描述

https://github.com/beetbox/confuse/workflows/Build/badge.svg?branch=master http://img.shields.io/pypi/v/confuse.svg

Confuse 是一个用于Python的配置库,它使用 YAML。它负责默认值、覆盖、类型检查、命令行集成、环境变量支持、可读性错误和标准OS特定位置。

它能做什么

以下是Confuse带来的好处

  • 一个 非常合理的API,类似于字典和列表结构,但提供 透明验证,无需大量样板代码。输入 config['num_goats'].get(int) 来获取配置的山羊数量并确保它是一个整数。

  • 多个来源 组合配置数据。使用 分层,Confuse 允许用户特定配置无缝覆盖全局配置,后者又覆盖内置默认值。包内的 config_default.yaml 可以使用与用户将看到相同的语法来提供底层默认值。运行时覆盖允许程序以编程方式覆盖和添加配置值。

  • 平台特定的路径 中查找配置文件。例如,Unix上的 $XDG_CONFIG_HOME~/.config;macOS上的“应用程序支持”;Windows上的 %APPDATA%。您的程序将获得自己的目录,您可以使用它来存储其他数据。如果您需要初始化配置文件,例如首次运行,可以透明地按需创建此目录。并且可以使用环境变量来覆盖目录的位置。

  • 通过标准库中的 argparseoptparse 与命令行参数集成。使用 argparse 的声明式 API 允许命令行选项覆盖配置默认值。

  • 包含来自 环境变量 的配置值。值会进行自动类型转换,并支持嵌套字典和列表。

安装

Confuse 可在 PyPI 上找到,可以使用 pip 进行安装。

pip install confuse

使用 Confuse

Confuse 的文档 详细描述了其 API。

致谢

Confuse 是为了支持 beets 而制作的。像 beets 一样,它也遵循 MIT 许可

项目详情


下载文件

下载您平台上的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。

源分发

confuse-2.0.1.tar.gz (50.9 kB 查看散列)

上传时间

构建分发

confuse-2.0.1-py3-none-any.whl (24.8 kB 查看散列)

上传时间 Python 3

由以下支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面