如何从类型别名确定类型?
How to determine type from type aliasing?
在声明别名 t1 = typing.List[int]
或 t2=typing.List[double]
后,我如何从 t1
确定它是 List[int]
并从 t2
确定它是List[double]
? t1
和 t2
是否有一些隐藏的属性或功能可以提供帮助?
交互地,您最有用的选项可能是
>>> t1
typing.List[int]
如果你想在程序中检查它,你可以查看 __name__
、__parameters__
之类的东西,或者 issubclass
是否将它报告为 [=15= 的子类]:
>>> t1.__name__
'List'
>>> t1.__parameters__
(<class 'int'>,)
>>> issubclass(t1, typing.List)
True
在声明别名 t1 = typing.List[int]
或 t2=typing.List[double]
后,我如何从 t1
确定它是 List[int]
并从 t2
确定它是List[double]
? t1
和 t2
是否有一些隐藏的属性或功能可以提供帮助?
交互地,您最有用的选项可能是
>>> t1
typing.List[int]
如果你想在程序中检查它,你可以查看 __name__
、__parameters__
之类的东西,或者 issubclass
是否将它报告为 [=15= 的子类]:
>>> t1.__name__
'List'
>>> t1.__parameters__
(<class 'int'>,)
>>> issubclass(t1, typing.List)
True