【发布时间】:2014-03-19 02:43:11
【问题描述】:
我有一个名为 parent 的父类,它是这样的:
class parent(object):
def __init__(self,p1,p2):
super(parent,self).__init__()
self.p1= p1
self.p2= p2
我有另一个子类,如下所示:
class child(parent):
def __init__(self,p1,p2,p3):
super(child,self).__init__()
self.p1 = p1
self.p2 = p2
self.p3 = p3
这个子类有一个额外的实例变量p3。我想要做的是能够创建带有参数的对象。这些参数用于更新类parent 的继承变量p1 & p2 和它自己的实例变量p3。但是当我运行上面的时候,我得到了错误:
if __name__ == "__main__":
p1 = parent('p1_parent','p2_parent')
p2 = child('p1_child','p1_child','p1_child')
错误:
TypeError: __init__() takes exactly 3 arguments (1 given)
【问题讨论】:
-
当班级不是
Event时,你为什么要打电话给super(Event, self)?Event甚至没有出现在继承层次结构中。
标签: python