强类型、零努力的 CLI 界面
项目描述
dargs
文档
•
pip install dcargs
dcargs是一个用于类型化 CLI 接口和配置对象的库。
我们的核心接口,dcargs.cli()从类型注释的可调用对象生成参数解析器
:函数、数据类、类以及嵌套的数据类和类。
这可以用来替代argparse:
| 使用 argparse | 带 dcargs |
"""Sum two numbers from argparse."""
import argparse
parser = argparse.ArgumentParser()
parser.add_argument(
"--a",
type=int,
required=True,
)
parser.add_argument(
"--b",
type=int,
default=3,
)
args = parser.parse_args()
print(args.a + args.b)
|
"""Sum two numbers by calling a
function with dcargs."""
import dcargs
def main(a: int, b: int = 3) -> None:
print(a + b)
dcargs.cli(main)
"""Sum two numbers by instantiating
a dataclass with dcargs."""
from dataclasses import dataclass
import dcargs
@dataclass
class Args:
a: int
b: int = 3
args = dcargs.cli(Args)
print(args.a + args.b)
|
有关更复杂的示例,请参阅 我们的文档。