Наследование классов: ошибка, при которой объект не имеет атрибута - PullRequest
0 голосов
/ 02 ноября 2019

Всякий раз, когда я пытаюсь запустить метод сна в классе вампиров (монстров), возникает следующая ошибка: AttributeError: 'vampire' object has no attribute 'hasCastle' Ошибка связана со строкой 8 кода. Я не понимаю, почему это происходит, потому что я новичок в наследстве.

Код:

class vampire(monster):
    def _init__(self, givenHasCastle, givenStrength, givenName):
        super().__init__(givenStrength, givenName)
        self.hasCastle = givenHasCastle

    def drinkBlood(self):
            print(self.name+" the vampire drinks the hero's blood.")

    def sleep(self):
        if self.hasCastle == True:
         print("The vampire sleeps silently in their castle.")
        else:
            print("The vampire sleeps silently in the wilderness.")

1 Ответ

0 голосов
/ 02 ноября 2019

hasCastle будет действовать как локальная переменная, объявлять ее как переменная класса не покажет вам эту ошибку.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...