Sobes.tech
Junior — Senior
64

Исправление поведения наследования в Python

Компании, где спрашивали:

BuddyAI
Условие задачи

Требуется откорректировать работу программы так, чтобы при её выполнении в консоль выводилась строка Ancestor bob: start.

class Ancestor:
    def __init__(self, name):
        self.name = name

    def start(self):
        print(f"Ancestor {self.name}: start")

    def rewind(self):
        print(f"Ancestor {self.name}: rewind")

class Parent1(Ancestor):
    def start(self):
        print(f"Parent1 {self.name}: start")

    def open(self):
        print(f"Parent1 {self.name}: open")

class Parent2(Ancestor):
    def start(self):
        super().start()
        print(f"Parent2 {self.name}: start")

    def open(self):
        print(f"Parent2 {self.name}: open")

    def close(self):
        print(f"Parent2 {self.name}: close")

    def flush(self):
        print(f"Parent2 {self.name}: flush")

class Child(Parent1, Parent2):
    def flush(self):
        print(f"Child {self.name}: flush")

bob = Child("Bob")