В Python 3.5 были добавлены аннотации типов (см. здесь).
Есть ли способ определить аннотации рекурсивного типа, например, для древовидной структуры?
class Employee(object):
def __init__(self, name: str, reports: List[Employee]):
self.name = name
self.reports = reports
В приведенном выше не похоже, что аннотация List[Employee]
работает. Запуск кода приводит к этой ошибке:
NameError: name 'Employee' is not defined