是一个Python内置函数,用于调用父类的方法。通过调用`super()`返回的对象的方法,可以在子类中访问父类的属性和方法,并在需要的情况下进行扩展或修改。
`super()`函数的一般语法是`super().method()`,其中`method`是父类中的方法名。它可以在子类的方法中调用父类的同名方法,并在需要的情况下对其进行扩展或修改。
在 Python 中,多重继承时,子类可能同时继承多个父类,而每个父类可能都有相同名称的方法。这时,使用`super()`函数可以确保按照方法解析顺序(MRO)调用正确的父类方法。
例如,考虑下面的示例:
class ParentClass:
def some_method(self):
print("ParentClass some_method")
class ChildClass(ParentClass):
def some_method(self):
super().some_method() # 调用父类的some_method方法
print("ChildClass some_method")
child = ChildClass()
child.some_method()
在上述示例中,`ChildClass`继承自`ParentClass`。在`ChildClass`的`some_method`方法中,我们使用`super().some_method()`调用父类的`some_method`方法,并在该方法中添加了额外的打印语句。
当我们创建`ChildClass`的实例`child`并调用`some_method`方法时,会输出以下结果:
ParentClass some_method
ChildClass some_method
referece:
内置函数 — Python 3.8.17 文档