最近在学习Python,在学习面向对象的内容是发现,我在实例化对象的时候__init__方法没有被调用,下面是简单的测试代码:
1 class Test: 2 def __init__(self,name ,age): 3 self.name = name 4 self.age = age 5 6 def print_name_and_age(self): 7 print self.name 8 print self.age 9 10 a = Test("languomao","24") 11 a.print_name_and_age()
运行之后提示错误:
E:\Python2.7\python2.exe E:/pycharm/Pythontest/test41.py Traceback (most recent call last): File "E:/pycharm/Pythontest/test41.py", line 10, in <module> a = Test("languomao","24") TypeError: this constructor takes no arguments Process finished with exit code 1
也就是说我自己写的__init__方法并没有被调用,实例化这个对象的时候调用了父类(object)的__init__方法(我写的那个方法左右都是两下划线的,确认无误哦),所以,到底是哪里出了问题,有没有大神帮我解答一下。。。。
你写错了亲
def __init__(self,name ,age):
self.name = name
self.age = age
其实是四格缩进,还有我没看出问题在哪里
??? 确认无误???
int?
嗯