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)