class A(object): ? ?def foo(self): ? ? ? ?print('A foo') ? ?def bar(self): ? ? ? ?print('A bar')class B(object): ? ?def foo(self): ? ? ? ?print('B foo') ? ?def bar(self): ? ? ? ?print('B bar')class C1(A): ? ?passclass C2(B): ? ?def bar(self): ? ? ? ?print('C2-bar')class D(C1,C2): ? ?passif __name__ == '__main__': ? ?print(D.__mro__) ? ?d=D() ? ?d.foo() ? ?d.bar()為什么最后的結(jié)果是(<class '__main__.D'>, <class '__main__.C1'>, <class '__main__.A'>, <class '__main__.C2'>, <class '__main__.B'>, <class 'object'>)A fooA bar而不是(<class '__main__.D'>, <class '__main__.C1'>, <class '__main__.A'>, <class '__main__.C2'>, <class '__main__.B'>, <class 'object'>)A fooA barB fooB bar
為什么結(jié)果會是這樣??
慕粉2243144748
2018-03-14 21:51:02