如何反省 PEP 484 类型提示?
How to introspect on PEP 484 type hints?
我观察到以下函数
def foo(x: int) -> List[int]:
return x + 1
可以使用表达式foo.__annotations__
获取注释信息,得到{'x': <class 'int'>, 'return': typing.List[int]}
.
这是官方的吗API?如果没有,是否存在官方 API 来获取对象的签名,如果有,它是什么?
确实是官方的一部分API。
对于函数,您还可以查看 inspect.signature()
.
我观察到以下函数
def foo(x: int) -> List[int]:
return x + 1
可以使用表达式foo.__annotations__
获取注释信息,得到{'x': <class 'int'>, 'return': typing.List[int]}
.
这是官方的吗API?如果没有,是否存在官方 API 来获取对象的签名,如果有,它是什么?
确实是官方的一部分API。
对于函数,您还可以查看 inspect.signature()
.