Python super () - должен работает, но не работает?

Насколько я могу судить, и все, что я нашел в Интернете, это должно сработать (но это не так, поэтому я ' m спрашиваю здесь;))

class Tigon(Crossbreeds, Predator, Lion):

    def __init__(self):
        super().__init__()
    def printSize(self):
        print("Huge")

И «Гибрид», и «Хищник» наследуются от «Млекопитающего», а «Лев» наследуется от Хищника. Компиляция тех работает нормально. Я работаю над Python 3.2, хотя пробовал и более раннюю версию:

Изменить: Извините, часть моего поста не прошла по какой-то причине.

Я также пробовал:

class Tigon(Crossbreeds, Predator, Lion):

    def __init__(self):
        super(Tigon, self).__init__()
    def printSize(self):
        print("Huge")

, и оба они дали мне:

class Tigon(Crossbreeds, Predator, Lion):
TypeError: Cannot create a consistent method resolution
order (MRO) for bases Predator, Mammal, Lion

Есть предложения?

6
задан Stephane Rolland 22 March 2013 в 17:50
поделиться