如果父类之间存在同名的属性或者方法,应该尽量避免使用多继承。
>>> class A:
def fun(self):
print('A--fun')
>>> class B:
def fun(self):
print('B--fun')
>>> class obj(A,B):
pass
>>> a = obj()
>>> a.fun
<bound method A.fun of <__main__.obj object at 0x0000022B55850F40>>
>>> a.fun()
A--fun
>>> class obj(B,A):
pass
>>> a = obj()
>>> a.fun()
B--fun
>>> print(obj.__mro__)
(<class '__main__.obj'>, <class '__main__.B'>, <class '__main__.A'>, <class 'object'>)
哪个类在前,就先执行谁的方法