私はhttps://www.python-course.eu/python3_multiple_inheritance.phpからこれを持っている:この例で "m of A called"が2回印刷されないのはなぜですか?
class A:
def m(self):
print("m of A called")
class B(A):
def m(self):
print("m of B called")
super().m()
class C(A):
def m(self):
print("m of C called")
super().m()
class D(B, C):
def m(self):
print("m of D called")
super().m()
そして出力:
>>> from super5 import D
>>> x = D()
>>> x.m()
m of D called
m of B called
m of C called
m of A called
私はプログラミングの初心者だと私はどのようにスーパー(理解するのに苦労しています)とMROの作品。申し訳ありませんが、これは愚かな質問です。
MRO内のすべての実装が一度呼び出されるようにするために、これは 'super'が* for *であるためです。 – jonrsharpe