如何获得与函数签名对应的TypedAct?

2024-10-04 03:22:10 发布

您现在位置:Python中文网/ 问答频道 /正文

假设我有这样一个函数签名:

def any_foo(
    bar: Bar,
    with_baz: Optional[Baz] = None,
    with_datetime: Optional[datetime] = None,
    effective: Optional[bool] = False,
) -> Foo

当然,我可以复制它的声明并对其进行足够的修改,以创建以下TypedDict

AnyFooParameters = TypedDict(
    "AnyFooParameters",
    {
        bar: Bar,
        with_baz: Optional[Baz],
        with_datetime: Optional[datetime],
        effective: Optional[bool]
    }
)

但是这看起来像是一个直接的转换,我想知道是否有一些简单的方法可以直接从函数创建这个TypedDict(或者至少是name: type对)


Tags: 函数nonedatetimedefwithbaranybaz