Das vorige Beispiel erweitern wir nun um eine Methode m() in B:
class A(object):
def m(self):
print("m in A")
class B(A):
def m(self):
A.m(self)
print("m in B")
class C(A):
def m(self):
A.m(self)
print("m in C")
class D(B,C):
pass
d = D()
d.m()
Ausgabe:
m in A
m in B
Eigentlich könnte man erwarten, dass D sowohl die Methode m() von B als auch C erbt, aber Python entscheidet sich für die erste Klasse, also für B.