Я пытаюсь написать аннотацию типа для правильного автозаполнения в PyCharm. См. этот усовершенствованный пример кода:
class TestClass:
a = 1
@staticmethod
def make_new_with_a(a: int) -> TestClass:
t = TestClass()
t.a = a
return t
print(TestClass.make_new_with_a(7).a)
Код работает и печатает 7
на выходе. Но PyCharm подчеркивает -> TestClass
красным и показывает Unresolved reference 'TestClass'
при наведении курсора мыши на подсказку. Не работает автодополнение для полей возвращаемого типа метода (...make_new_with_a(7).
+ <ctrl+space>
).
Похожие вопросы:
-> 'TestClass'
(в виде строки) вместо-> TestClass
. PyCharm/IntelliJ IDEA распознает это и предоставляет вам автозаполнение и другие полезные функции. (Подсказки типа: ссылки вперед) - person Bloke   schedule 12.10.2016