8

这个问题来自以下问题,假设class B扩展class A

class A(object):
  def do_work(self):
    print 123

class B(A):
  def do_work(self):
    super(B,self).do_work() # versus the next statement
    super(A,self).do_work() # what's the difference?
4

1 回答 1

17
super(B,self).do_work()

将调用do_work父类所看到的函数B- 即A.do_work.


super(A,self).do_work()

将调用-do_work的父类所看到的函数(它可能不存在,因此可能会引发异常)。Aobject.do_work

于 2013-02-07T04:59:17.820 回答