python多继承
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python多继承相关的知识,希望对你有一定的参考价值。
单继承:一个子类只有一个直接父类时称这个继承关系为单继承
多继承:一个子类有两个或以上直接父类时称这个继承关系为多继承
菱形继承:菱形继承是多继承的一种特殊情况
#多继承
class A:
def func01(self):
print("in func01 A")
def func04(self):
print("in func04 A")
class B:
def func02(self):
print("in func02 B")
def func04(self):
print("in func04 B")
class C(B,A): #当c类所继承的多个父类中拥有同一个方法的时候,遵循就近原则(谁写在前面就继承谁的)
def func03(self):
print("in func03 C")
class D(A,B):
pass #占位符,无实际意义
if __name__ == __main__:
c = C()
c.func02()
c.func04() #此时由就近原则可得c继承B类的func04方法(因为b离c近)
d= D()
d.func04() #此时由就近原则可得c继承A类的func04方法(因为A离D近)
运行结果
/usr/local/bin/python3 /root/PycharmProjects/NSD211/day8/day9.py
in func02 B
in func04 B
in func04 A
Process finished with exit code 0
以上是关于python多继承的主要内容,如果未能解决你的问题,请参考以下文章