Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/scala/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x 可变泛型类型别名_Python 3.x_Typing_Mypy - Fatal编程技术网

Python 3.x 可变泛型类型别名

Python 3.x 可变泛型类型别名,python-3.x,typing,mypy,Python 3.x,Typing,Mypy,我正在编写一个python类型存根,用于mypy。有许多函数采用的回调参数形式为Callable[[*foo],Any],其中*foo表示零种或多种类型。我希望能够使用泛型类型别名来减少重复 泛型类型别名是有文档记录的,但我不知道如何将类型列表作为参数 我知道这可以通过一些具体的论点来实现: T = TypeVar('T') Callback0 = Callable[[], Any] Callback1 = Callable[[T], Any] def foo(f: Callback0): .

我正在编写一个python类型存根,用于mypy。有许多函数采用的回调参数形式为
Callable[[*foo],Any]
,其中
*foo
表示零种或多种类型。我希望能够使用泛型类型别名来减少重复

泛型类型别名是有文档记录的,但我不知道如何将类型列表作为参数

我知道这可以通过一些具体的论点来实现:

T = TypeVar('T')
Callback0 = Callable[[], Any]
Callback1 = Callable[[T], Any]

def foo(f: Callback0): ...
def bar(f: Callback1[str]): ...
我想声明的是:

def foo(f: Callback[]): ...
def bar(f: Callback[str]): ...
如果有必要的话,代码是针对Python3.3的,我正在用Python3.7运行mypy