【发布时间】:2012-04-18 23:34:04
【问题描述】:
我的基本代码如下所示:
class C1(object):
def f(self):
return 2*self.g()
def g(self):
return 2
class C2(C1):
def f(self):
return 3*self.g()
class C3(C1):
def g(self):
return 5
class C4(C3):
def f(self):
return 7*self.g()
obj1 = C1()
obj2 = C2()
obj3 = C3()
obj4 = C4()
现在我的问题如下:我需要编写三个赋值语句来执行以下操作:
- 将
obj2.f()的调用列表分配给变量obj2_calls - 将
obj3.f()的调用列表分配给变量obj3_calls - 将
obj4.f()的调用列表分配给变量obj4_calls
调用列表例如,当调用obj1.f()时,调用C1的f方法,该方法调用C1的g方法。这可以表示为['C1.f', 'C1.g']
我不太清楚写作业语句的正确方法,我非常想帮助我的朋友处理她的事情。
如果你能告诉我如何正确地纠正第一个赋值语句,我相信我能弄清楚其余的。
【问题讨论】:
-
仅供参考,Stack Overflow 上的家庭作业很好。家庭作业没有表现出任何努力是问题所在。
标签: python class inheritance methods