В моей программе есть классы, подобные следующим:
class Dinosaur:
def __init__(self, roar: str):
self.roar = roar
class TRex(Dinosaur):
@property
def roar(self) -> str:
return "Roaar!"
Mypy возвращает следующую ошибку:
error: Signature of "roar" incompatible with supertype "Dinosaur"
Мне нужно сохранить roar
как атрибут в Dinosaur
и сохранить ее как аннотированную в свойстве функцию в TRex
.
Можно ли это исправить, не прибегая к тому, чтобы mypy игнорировала строку?Является ли это ошибкой в mypy, когда она не учитывает функции, аннотированные свойствами?