假设我有一个类型提示
List[int]
,如何以编程方式获取容器内的类型?
from typing import List
x = List[int]
容器的类型是
List
,但是我如何获取里面的内容(int
),有Python api吗?
Python 中的机制
typing.py
将生成类的 .__args__
属性注释为元组。对于你的情况:
print(x.__args__[0])
将导致打印
int
。
我没有在任何规范中找到这个属性是否应该成为一个标准,它是
typing
的实现细节;尽管如此,它仍然适用于现代 Python 安装。