如何在python中引用父方法?

这个问题在这里已经有了答案:

  • 在Python中从子类调用父类的方法? 12个答案

  • 如果你知道你想使用A,你也可以用这种方式明确地引用A:

    class B(A):
        def f(self,num): 
            return 7 * A.f(self,num)
    

    记住你必须明确地给成员函数Af()


    使用super

    return 7 * super(B, self).f(num)
    

    或者在Python 3中,它只是:

    return 7 * super().f(num)
    

    与其他答案一致,有多种方法可以调用超类方法(包括构造函数),但是在Python-3.x中,该过程已被简化:

    Python的2.X

    class A(object):
     def __init__(self):
       print "world"
    
    class B(A):
     def __init__(self):
       print "hello"
       super(B, self).__init__()
    

    Python的3.X

    class A(object):
     def __init__(self):
       print "world"
    
    class B(A):
     def __init__(self):
       print "hello"
       super().__init__()
    

    根据文档super(<containing classname>, self) super()现在等价于super(<containing classname>, self)

    链接地址: http://www.djcxy.com/p/30047.html

    上一篇: how to refer to a parent method in python?

    下一篇: Python inheritance from lists