+-------+
| A |
+-------+
| total |
+-------+
|
+--------------+--------------+
| |
+----+ +----+
| B | | C |
+----+ +----+
| | | |
+----+ +----+
| |
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
| |
+--------------+ +--------------+
| D | | E |
+--------------+ +--------------+
|print_total() | |print_total() |
+--------------+ +--------------+
+-------+
| A |
+-------+
| total |
+-------+
|
+--------------+--------------+
| |
+----+ +----+
| B | | C |
+----+ +----+
| | | |
+----+ +----+
| |
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
| |
| +--------------+ |
| | M | |
| +--------------+ |
| |print_total() | |
| +--------------+ |
| | |
| +------------+----------+ |
| | | |
+----+ +----+
| D | | E |
+----+ +----+
| | | |
+----+ +----+
class A:
total = 42
class B(A):
pass
class C(A):
pass
#xxxxxxxxxxxxxxxxxxxxxxxx
class M:
def print_total(self):
print(self.total)
class D(B, M):
pass
class E(C, M):
pass
e = E()
e.print_total()