【发布时间】:2017-01-03 06:23:50
【问题描述】:
我正在尝试通过以下代码在 Python 3.5.1 中使用类型提示:
>>> class A:
... def a(self, i: int, b: A):
... pass
...
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "<stdin>", line 2, in A
NameError: name 'A' is not defined
我猜想在解析类型 A 时确定类型 A 尚未完全构造是问题,但我不明白为什么这样的语法不好。有没有其他方式表达它或者它只是非法构造?
我想在基类中使用这个语法提示,它可以在树状层次结构中组成派生类。
【问题讨论】:
-
考虑使用装饰器来处理这种类型的东西,或元类
标签: python python-3.x