这是我的家庭作业,我看到它在网站上发布之前,但它看起来像没有解决,我得到了一个不同的错误信息比以前提出这个问题的人不同。在Python中使用继承
问题的第一部分是定义从Employee继承的子类Worker,并包含引用另一个员工是工人经理的属性。你应该定义一个方法get_manager来返回工人的经理。
实施例:
worker = Worker("Fred", 52000, myboss)
问题的第二部分是定义从雇员继承并且包括指年度奖金的属性子类执行。
你应该重写工资方法来计算基于他/她的工资和奖金的高管薪酬。您应该在执行类的工资方法定义中使用Employee的工资方法。
例子:
executive = Executive("Kerry", 520000, 1040000)
我编写代码的下方,该错误消息我得到的是:“全球名‘薪水行“雇员’没有定义”。 初始(self,name,salary)'为班长(它适用于工人班)。为什么我得到这个错误,我该如何解决它?
谢谢你的帮助!
class Employee(object):
def __init__(self, name, salary):
self._name = name
self._salary = salary
def my_name(self):
return self._name
def wage(self):
return self._salary/26 # fortnight pay
class Worker(Employee):
def __init__(self, name, salary, manager):
Employee.__init__(self, name, salary)
self._manager = manager
def getManager(self):
return self._manager
class Executive(Employee):
def __init__(self, name, wage, yearlyBonus):
Employee.__init__(self, name, salary)
self._yearlyBonus = yearlyBonus
def wage(self):
return Employee.wage(self)
你忘占到什么'self._yearlyBonus'在计算'执行'的工资 – Jared 2013-04-21 07:23:30
我纠正了我的代码,但我仍然收到错误消息'你的执行官有错误的工资'... – kate88 2013-04-21 07:46:04
@ kate88这是一个实际的错误消息吗?它从哪里来?不应该每年只应用一次,还是一次除以26? – 2013-04-21 07:58:59