为可调用类型提示指定* args

问题描述 投票:0回答:1

指定Callable变量fn*my_args作为参数的最佳方法是什么?像这样:

def test(fn: Callable([Tuple[any]], None),
         *my_args: any) -> None:
    fn(*myargs)
python type-hinting typing
1个回答
0
投票

摘自typing.Callable上的文档:

没有语法指示可选或关键字参数;这种函数类型很少用作回调类型。 typing.Callable(大写省略号)可用于使用任何数量的参数并返回Callable[..., ReturnType]来键入提示可调用的提示。

因此,在ReturnType是可选且*argsReturnType的情况下,使用

None

P.s。我不使用fn: Callable[..., None] ,所以如果我误解了任何内容,请告诉我。

© www.soinside.com 2019 - 2024. All rights reserved.