在类A的方法中键入类型A的参数的提示

时间:2016-08-26 14:28:29

标签: python python-3.x

我尝试使用以下代码在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还没有完全构造它的问题,但我不明白为什么这样的语法不正确。有没有办法表达它,否则它只是非法的构造?

我想在基类中使用这个语法提示,它可以在树状层次结构中组成派生类。

1 个答案:

答案 0 :(得分:3)

试试这个:

class A:

    def a(self, i: int, b: 'A'):
        pass

有关详细信息,请查看here