我尝试了解多个内容中的方法解析顺序。 这是我正在使用的代码。当我尝试创建类' ClassC'的对象时,只有ClassA的构造函数被调用。在这种情况下如何解决方法?
class ClassA:
def __init__(self):
print "inside a's init"
class ClassB:
def __init__(self):
print "inside b's init"
class ClassC(ClassA,ClassB):
pass
c = ClassC()
输出:
inside a's init
答案 0 :(得分:0)
我认为有一个python PEP详细介绍了MRO算法,但它相当复杂。此外,它还包含在Fluent Python一书中。我相信短篇小说是从左到右
如果你切换到
class ClassC(ClassB,ClassA):
pass
我打赌你会看到改变。 (更新,你肯定会看到一个变化)
如果你打电话
help(c)
你应该看到打印出来的mro。