欢迎访问宙启技术站
智能推送

Python中如何调用父类函数?

发布时间:2023-06-12 13:11:58

在Python中,可以通过super()函数来调用父类函数。super()函数是一个内置函数,用于调用父类的方法。它的基本用法是super().函数名()。这个函数会返回一个super对象,它表示当前类的父类。通过这个super对象,可以调用当前类的父类中的函数。

例如,下面是一个例子:

class A:
    def foo(self):
        print("A's foo")
        
class B(A):
    def foo(self):
        print("B's foo")
        super().foo()
        
b = B()
b.foo()

在这个例子中,类B继承自类A。当我们调用b.foo()时,会先打印"B's foo",然后调用super().foo()来调用父类A中的foo()函数。这会输出"A's foo"。

需要注意的是,super()函数的参数有时会用到。当类继承自多个父类时,需要指定要调用哪个父类的方法。例如,下面的例子:

class A:
    def foo(self):
        print("A's foo")
        
class B:
    def foo(self):
        print("B's foo")
        
class C(A, B):
    def foo(self):
        print("C's foo")
        super(B, self).foo()
        
c = C()
c.foo()

在这个例子中,类C继承自类A和类B。当我们调用c.foo()时,会先打印"C's foo",然后调用super(B, self).foo()来调用父类B中的foo()函数。这会输出"B's foo"。如果我们使用super().foo(),则会调用父类A的foo()函数。

总结来说,使用super()函数可以很方便地调用父类函数,特别是在多重继承的情况下。需要注意的是,需要根据继承的关系确定要调用哪个父类的方法。