Python и порядок методов в множественном наследовании
В Python, если вы определяете два класса одним и тем же методом и намереваетесь, чтобы эти два класса были родительскими классами, как:
class A(object):
def hello(self):
print "hello from class a"
а также:
class B(object):
def hello(self):
print "hello from class b"
когда вы определяете дочерний класс и добавляете два родительских класса в порядке A и B:
class C(A, B):
def __init__(self):
self.hello()
метод, который используется при вызове self.method (), принадлежит A или первому классу в списке наследования:
>>> C()
hello from class a
<__main__.C object at 0x10571e9d0>
Несмотря на то, что это похоже на правду во всех моих тестовых случаях, я не могу найти места в документах или в Интернете, где бы он был безопасен для любой платформы и реализации языка. Может ли кто-либо подтвердить, что можно с уверенностью предположить, что первый унаследованный класс в списке всегда будет методом, используемым над другими (независимо от вызовов super () .__ init __ () и т. Д.), Или указать мне на официальную документацию, подтверждающую это?
Спасибо,