处理配置的工具
confload的Python项目详细描述
混流
处理配置的工具
Pypi Linkl <https://pypi.org/project/confload>
\
支持
格式:
- ini公司
- json格式
- 山药
起源:
- 网址
- 环境
- 对象
- 文件
安装
。。代码::bash
pip3 install confload
使用
。。代码::python
^{pr2}$注:大多数方法都可以链接
。。代码::python
cfg = Config(...).update(...).env(...).load(...)
自定义CLi解析器
argparse <https://docs.python.org/3/library/argparse.html>
,
click <https://click.palletsprojects.com/en/7.x/>
和其他许多
是货物,但我发现它们对我大部分的使用来说太复杂了。在
基于这两个,这里有另一个解析器
。。代码::python
from confload.cli import Parser, SubParser, String, Int, Float, Bool, Toggle, List
parser = Parser(
# Positional values
[
String("name"),
Int("abcde"),
],
# Optional values
[
String("lastname", aliases=["lastname", "l"]),
List("children", aliases=["child", "c"]),
Toggle("active", aliases=["active", "y"], default=False),
],
)
print(str(parser))
print(parser.aliases)
res = parser()
print(res)
跑步
python3 test_parser.py -l abcde --child foo,bar --lastname trew -c another -c some,other test 56
我们得到以下输出
。。代码::txt
[OPTIONS] NAME ABCDE
{'--lastname': lastname, '-l': lastname, '--child': children, '-c': children, '--active': active, '-y': active}
{'active': False, 'name': 'test', 'abcde': 56, 'lastname': 'trew', 'children': ['foo', 'bar', 'another', 'some', 'other']}
当我们实现一个工具时,自动使用subparser是有用的 调用函数。(正在进行)
未来
- 添加对argparse的支持
- 文档将被完成,一些更改可能也会出现。在
- 项目
标签: