python super使用方法
在Python中,super()函数用于调用父类的方法。它可以在子类中使用,以便在子类中调用父类中的方法。
super()函数的一般用法如下:
class ChildClass(ParentClass):
def __init__(self, arg1, arg2, ...):
super().__init__(arg1, arg2, ...)
# 子类的其他初始化代码
在上述代码中,super().__init__(arg1, arg2, ...)调用了父类的__init__()方法,并传递了相应的参数。这样可以确保子类在初始化时调用了父类的初始化方法,从而继承了父类的属性和方法。
除了在__init__()方法中使用super()函数外,它也可以在其他方法中使用。例如,如果子类要重写父类的某个方法,但仍然想保留父类方法的功能,可以使用super()函数来调用父类方法的实现。
下面是一个完整的示例,演示了如何使用super()函数:
class ParentClass:
def __init__(self, arg1, arg2):
self.arg1 = arg1
self.arg2 = arg2
def some_method(self):
print("ParentClass some_method called")
class ChildClass(ParentClass):
def __init__(self, arg1, arg2, arg3):
super().__init__(arg1, arg2)
self.arg3 = arg3
def some_method(self):
super().some_method()
print("ChildClass some_method called")
child = ChildClass("arg1", "arg2", "arg3")
child.some_method()
运行上述代码会输出以下结果:
ParentClass some_method called
ChildClass some_method called
在上述代码中,ChildClass继承自ParentClass,并重写了some_method()方法。在子类的__init__()方法中使用super().__init__(arg1, arg2)调用了父类的__init__()方法,以便初始化父类的属性。在子类的some_method()方法中,使用super().some_method()调用了父类的some_method()方法,并在子类方法中添加了额外的功能。
原文地址: https://www.cveoy.top/t/topic/irbx 著作权归作者所有。请勿转载和采集!