类型提示以返回一个类的实例,其中typevar是类类型。

3
如何编写返回类型提示,以指示函数返回“Class_”类的实例?
Class_ = TypeVar("Class_", bound=type)

def make_class(class_: Class_) -> Class_:
    return class_()

为什么不换一种方式,输出是T,输入是type[T](https://docs.python.org/3/library/typing.html#typing.Type)? - jonrsharpe
1个回答

2
你想要使用typing中的Type。这是你尝试用TypeVar("Class_", bound=type)定义的泛型实现。
因此,你只需要提供一个通用变量来表示返回的类的实例,然后可以使用通用的Type来指定输入参数。
from typing import Type, TypeVar


T = TypeVar("T")


def make_class(class_: Type[T]) -> T:
    return class_()

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接