Рубрики
Без рубрики

Мро

База класса: Def __init __ (Self): Печать («База .__ init__») Class Citch1 (База): Def __in … Теги с Python, совет.

class Base:
    def __init__(self):
        print('Base.__init__')

class Child1(Base):
    def __init__(self):
        Base.__init__(self)
        print('Child1.__init__')

class Child2(Base):
    def __init__(self):
        Base.__init__(self)
        print('Child2.__init__')

class Child3(Base):
    def __init__(self):
        Child1.__init__(self)
        Child2.__init__(self)
        print('Child3.__init__')


c3 = Child3()


Проверьте вывод печати – это то, что вы ожидали! База .__ init__ Child1 .__ init__ База .__ init__ Child2 .__ init__ Child3 .__ init__

и теперь попробуй это

class Base:
    def __init__(self):
        print('Base.__init__')

class Child1(Base):
    def __init__(self):
        super().__init__()
        print('Child1.__init__')

class Child2(Base):
    def __init__(self):
        super().__init__()
        print('Child2.__init__')

class Child3(Child1, Child2):
    def __init__(self):
        super().__init__()
        print('Child3.__init__')


c3 = Child3()
print(Child3.__mro__)

(, , , , <класс ‘Объект’>)

Оригинал: “https://dev.to/taleb/mro-4n95”