至于我可以告诉大家,一切我一直在网上寻找,这应该工作(但它没有,这就是为什么我问这里;))Python超级() - 应该工作,但不是?
class Tigon(Crossbreeds, Predator, Lion):
def __init__(self):
super().__init__()
def printSize(self):
print("Huge")
两个“杂种”和“捕食者”从“哺乳动物”继承,而“狮子”从Predator继承。这些工作的汇编很好。我正在使用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
有什么建议?
你必须写什么不工作,所以我们可以帮助。 'super()'通常需要参数:http://docs.python.org/library/functions.html#super – viraptor 2011-05-19 10:58:33
对不起,部分帖子没有通过。现在编辑 – BIU 2011-05-19 11:02:07
@viraptor:python 3中的super()不需要参数(尽管它仍然可以接受它们),并且如果没有参数指定它们可能是有意义的。 – 2011-05-19 11:02:15