【发布时间】:2019-12-04 10:22:00
【问题描述】:
考虑以下代码:
from typing import Optional
class Foo:
def __init__(self):
self.baz: Optional[int] = None
如何在代码中找到 baz 类型为 Optional[int] 的代码?如果我做type(Foo().baz),我只会得到None。
【问题讨论】:
-
type不是您访问打字数据的方式,它在__annotations__中。但我不认为这样的方法中的注释会暴露在任何地方。通常你会将它包含在参数列表中,即(self, baz: Optional[int] = None),然后它会在Foo.__init__.__annotations__中。 -
mypy发现它们很好,至少对于 init。我希望能够在我的代码中使用这些。