Python多继承super只引用第一个父类

Python多继承super只引用第一个父类

class Animal:
    def __init__(self):
        print("in parent")

class Animal2:
    def __init__(self):
        print("in parent2")

class Dog(Animal2, Animal):
    def __init__(self):
        super().__init__()
        print("in dog")


d = Dog()

如上代码,控制台打印:

in parent2
in dog

如果Dog声明为

class Dog(Animal, Animal2):

那么控制台打印:

in parent
in dog

可见,多重继承情况下,super只会引用第一个父类的__init__方法

原文地址:https://www.cnblogs.com/shuada/p/12498748.html