出于样式原因,我试图在类 Foo 之前保留 myDict 的定义。这将导致 NameError 因为 Foo 尚未定义。
from typing import Dict
myDict: Dict[str, Foo] = {}
class Foo:
pass
将 myDict 移到 Foo 下面显然可以解决这个问题,但是有什么办法可以让 myDict 及其注释保持在最上面吗?
最佳答案
可以这样引用:
from typing import Dict
myDict: Dict[str, 'Foo'] = {}
class Foo:
pass
参见 https://www.python.org/dev/peps/pep-0484/#forward-references获取更多信息。
关于python - 类型注释稍后定义的类(前向引用),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59206992/