我有这个:
#!/usr/bin/env python
class myclass1(object):
def __init__(self, arg1):
self.var1 = arg1
class myclass2(myclass1):
def f1(self):
print "in f1"
class myclass3(myclass1):
def __init__(self, arg1):
self.var2 = arg1
self.c2 = myclass2()
p= myclass3(5)
这给了我一个错误:
Traceback (most recent call last):
File "./pythoninherit.py", line 39, in <module>
p= myclass3(5)
File "./pythoninherit.py", line 29, in __init__
self.c2 = myclass2()
TypeError: __init__() takes exactly 2 arguments (1 given)
问题:为什么给出错误?
为什么__init__
在这种情况下会自动调用 myclass1?
我的印象是这在 python 中不会发生。