Skip to main content

强类型、零努力的 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)

有关更复杂的示例,请参阅 我们的文档

项目详情


发布历史 发布通知| RSS订阅