python:如何从子类对象中调用父类的函数


class a:
    def fun1(self):
        print 'inside a'
class b(a):
    def fun1(self):
        print 'inside b'
class c(a):
    def fun1(self):
        print 'inside c'
class d(b,c):
    pass
ob=d()
d.fun1()

上面的代码将按照MRO打印'inside b'。有没有办法从类C调用函数与对象d ?

以下方法对我有效。

 ob=d()
 c.fun1(ob)  # class_name.function_name(obj reference)

输出:在c

正如其他人指出的那样,这是一个坏主意,也是一个坏做法。

也就是说,实现这一点的方法是:

class d(b,c):
    def fun1(self):
        # d uses c's fun1() instead of b's
        return c.fun1(self)

相关内容

  • 没有找到相关文章

最新更新