如何从类型别名确定类型?

How to determine type from type aliasing?

在声明别名 t1 = typing.List[int]t2=typing.List[double] 后,我如何从 t1 确定它是 List[int] 并从 t2 确定它是List[double]t1t2 是否有一些隐藏的属性或功能可以提供帮助?

交互地,您最有用的选项可能是

>>> t1
typing.List[int]

如果你想在程序中检查它,你可以查看 __name____parameters__ 之类的东西,或者 issubclass 是否将它报告为 [=15= 的子类]:

>>> t1.__name__
'List'
>>> t1.__parameters__
(<class 'int'>,)
>>> issubclass(t1, typing.List)
True