class A:
def ptr(self):
self.t = 5
class B:
def ptr2(self):
self.y = 99
def sum(self):
print(self.t + self.y)
class C(A,B):
def __init__(self):
self.ptr()
self.ptr2()
ups = C()
ups.sum()
C继承了A和B,也就是C有这些类的属性(ptr,ptr2,sum),我可以随时参考。在我调用这些方法的构造函数中,t和y被添加到了命名空间中,但是当我调用Sum时为什么它起作用时,ups命名空间是t和y,而B没有t。
我将尝试回答您之前的问题,您出于某种原因将其删除并发布了一个新问题,类似于上一个问题https://ru.stackoverflow.com/questions/1129347
当您从
Left_Bar
-self.leftlist
它继承时,它成为该类的一个属性,并且在该类Manager
的所有方法中都可用Manager
。当您从
Widget2
-methods继承stack2UI
并push_me
成为类对象Manager
时,它们中的所有类属性都可用Manager
,包括self.leftlist
.您使用多重继承编写的内容等同于我在下面编写的内容: