0

班级工人:

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('鲍勃·史密斯',50000)

sue=Worker('Sue Jones',60000)

4

2 回答 2

1

您在之前和之后使用了一个下划线init。Python 在前后使用两个下划线:

def __init__(self,name,pay):
    self.name=name
    self.pay=pay
于 2013-04-14T04:35:02.620 回答
0

也总是从基类型对象继承。你的类声明应该是:

class Worker(object):
    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)

不从对象继承在 Python 2.x 中形成了一个“旧式”类。有关详细信息,请参阅http://wiki.python.org/moin/NewClassVsClassicClass,如果您不知道,那么您需要新样式的课程。

于 2013-04-14T04:49:16.300 回答