Как переопределить метод класса в Python?

Пользователь

от montana_hand , в категории: Python , 3 месяца назад

Как переопределить метод класса в Python?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от NicolasSsh , 3 месяца назад

@montana_hand  Для переопределения метода вы можете объявить метод вновь в дочернем классе.


 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
class Monkey: # Объявляем родительский класс
    def info(self): # Объявляем метод, который мы будет переопределять
        return f"I'm a monkey, my kind is gorilla"

class Human(Monkey): # Объявляем дочерний класс
    def think(self):
        return f"I'm a Human and now I'm thinking"
    
    def info(self): # Переопределяем метод путем обычного пересоздания
        return f"I'm a Human, my kind is Homosapiens"

if __name__ == "__main__":
    monkey = Monkey()
    human = Human()

    print(monkey.info()) # I'm a monkey, my kind is gorilla
    print(human.info()) # I'm a Human, my kind is Homosapiens