如何将类型提示添加到 "class" 输入 python
How to add type hinting to "class" type in python
# Java
public <T> T findById(String id, Class<T> clazz)
上面Java方法签名中的Class<T>
类型应该如何用Python类型提示表示?
# Python
def find_by_id(id: str, clazz: ???) -> T
要注释 class 本身的类型,请使用 Type
。
from typing import Type
class AClass(object):
pass
def a_function(a_string: str, a_class: Type[AClass]) -> None:
pass
由于 class 是一种类型,因此 class 名称本身可以是注释:
def a_class_factory(a_class: Type[AClass], *args, **kwargs) -> AClass:
return a_class(*args, **kwargs)
# Java
public <T> T findById(String id, Class<T> clazz)
上面Java方法签名中的Class<T>
类型应该如何用Python类型提示表示?
# Python
def find_by_id(id: str, clazz: ???) -> T
要注释 class 本身的类型,请使用 Type
。
from typing import Type
class AClass(object):
pass
def a_function(a_string: str, a_class: Type[AClass]) -> None:
pass
由于 class 是一种类型,因此 class 名称本身可以是注释:
def a_class_factory(a_class: Type[AClass], *args, **kwargs) -> AClass:
return a_class(*args, **kwargs)