Python の mro(メソッド解決順序) を理解するのに少し苦労しています。Python は左から右に動作します。したがって、私の理解によれば、M を呼び出す順序は次のようになります。M、B、A、Z、X、Y
class X: pass
class Y: pass
class Z: pass
class A(X,Y): pass
class B(Y,Z): pass
class M(B,A,Z): pass
print(M.mro())
しかし、呼び出しの正しい順序は次のとおりです。
[<class '__main__.M'>,
<class '__main__.B'>,
<class '__main__.A'>,
<class '__main__.X'>,
<class '__main__.Y'>,
<class '__main__.Z'>,
<class 'object'>]
誰でも順序を説明して、これを理解するのを手伝ってくれますか? ありがとうございました