(新人发帖,请原谅)
我在学习python时,参考了机械工业出版社《python学习手册》(Mark Lutz著)一书,在看到144页“用户定义的类”时,自己亲自将程序敲进了电脑。去发现了错误
:object.__new__() takes no parameters。
当我上网查找答案时,几乎千篇一律的是_init_打成了_int_,而我打对了却仍然出现了问题。
书本例程:
class Worker:
def _init_(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',50000)
而错误为 object.__new__() takes no parameters。
当改成如此才可:
bob=Worker()
bob.name='Bob Smith'
bob.pay=50000
另外,若排版不好,如下:
class Worker:
def _init_(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.lastName()时,会出现以下错误:
'Worker' object has no attribute 'lastName'
注意排好版!!!!
就说这么多,原吾与诸君共勉。