对于以下键入:
import typing
foo: typing.List[int] = []
如何检索foo列表中的项目类型(通过类型提示)?结果必须为<class 'int'>
。
答案 0 :(得分:1)
不确定您是否正在寻找类似的东西。
import sys
import typing
foo: typing.List[int] = []
foo_one: typing.Tuple[float] = ()
def _get_type_of_item(param):
"""
typing.get_type_hints(obj[, globals[, locals]]):
Return a dictionary containing type hints for a function, method, module or class object.
"""
return typing.get_type_hints(sys.modules[__name__])[param].__args__
print(_get_type_of_item('foo')) # this will print (<class 'int'>,)
print(_get_type_of_item('foo_one')) # this will print (<class 'float'>,)