python内置函数super()主要用于类的多继承中,用来查找并调用父类的方法,所以在单重继承中用不用 super 都没关系;但是,使用 super() 是一个好的习惯。一般我们在子类中需要调用父类的方法时才会这么用。
下面是一段示例代码,类C(A)中继承父类A。执行C的实例化时,流程为:
1、执行A的实例化,输出:i am class A0 ---
2、执行C的实例化,输出:i am class C ---
3、调用类A的_init_(),输出:i am class A
4、调用类A的A1(),输出:i am class A1
class A(object):
print('i am class A0')
def __init__(self):
print('i am class A')
def A1(self):
print('i am class A1')
class C(A):
print('i am class C')
def __init__(self):
super(C, self).__init__()
super(C, self).A1()
c = C()
输出:
i am class A0
-------------
i am class C
-------------
i am class A
---------------------------
i am class A1
---------------------------
更多参考:https://blog.csdn.net/weixin_44207181/article/details/90647890