Python und Reihenfolge der Methoden bei Mehrfachvererbung

Wenn Sie in Python zwei Klassen mit derselben Methode definieren und diese beiden Klassen als übergeordnete Klassen definieren möchten, gilt Folgendes:

class A(object):
     def hello(self):
         print "hello from class a" 

und:

class B(object):
     def hello(se,lf):
         print "hello from class b"

Wenn Sie die untergeordnete Klasse definieren und die beiden übergeordneten Klassen in der Reihenfolge A und B hinzufügen:

class C(A, B):
     def __init__(self):
         self.hello()

Die Methode, die beim Aufrufen von self.method () verwendet wird, gehört zu A oder der ersten Klasse in der Liste der Vererbung:

>>> C()
hello from class a
<__main__.C object at 0x10571e9d0>

Obwohl dies in allen meinen Testfällen der Fall zu sein scheint, kann ich in den Dokumenten oder im Internet keinen Platz finden, an dem es tatsächlich für alle Plattformen und Implementierungen der Sprache sicher ist. Kann jemand bestätigen, dass es sicher ist anzunehmen, dass die erste geerbte Klasse in der Liste immer die Methode ist, die für die anderen Klassen verwendet wird (unabhängig von super () .__ init __ () -Aufrufen usw.), oder mich auf eine offizielle Dokumentation hinweisen, die dies bestätigt?

Danke,

Antworten auf die Frage(2)

Ihre Antwort auf die Frage