python:如何针对 MRO 从子对象 class 调用父对象 class 的函数

python: How to call a function of parent class from child class object against MRO

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.Is 打印 'inside b' 有什么方法可以从 class 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)