2
Когда я пытаюсь совместить Тип подсказки и создание объекта через classmethod
я получаю следующее NameError
:Тип-подсказки: Как я могу указать, что я хочу вернуть экземпляр фактического класса?
NameError: name 'Person' is not defined
Как я могу указать через типа намекая, что я хочу, чтобы вернуть экземпляр класса, который я я в настоящее время определяю? (Смотри пример)
Пример:
Определение classmethod
from_dict
терпит неудачу, потому что Python не может разрешить class Person
.
class Person:
def __init__(self, name: str):
self.name = name
@classmethod
def from_dict(self, info: dict) -> Person:
person_obj = Person(info['name'])
return person_obj
def speak(self, word: str) -> str:
print(word)
return self.name + 'said' + word