今天学习定义自己的类,没想到第一个就出问题了,具体的问题如下:
>>> class worker:
... def __int__(self,name,pay):
... self.name = name
... self.pay = pay
... def lastname(self):
... return self.name.split()[-1]
... def giveraise(self,percent):
... self.pay *= (1.0 + percent)
...
>>>
>>>
>>>
>>> bob = worker("bob smith",5000)
Traceback (most recent call last):
File "", line 1, in
TypeError: object.__new__() takes no parameters
>>>
>>>
>>>
自己一遍一遍的重敲代码,还是解决不了错误,上网查找相关的资料,说可能是def 后边因该有两个“ _”,我也往
其中加了,可还是错误,最终仔仔细细的看了自己的代码和书上的代码才发现了错误,原来,由于我自己受C语言
的影响,将def __init__(self,name,pay):一个语句写成了def __int__(self,name,pay):改正了init就正确了,
以后写代码的时候一定要仔细了!!
阅读(6264) | 评论(0) | 转发(0) |