刷题刷出新高度,偷偷领先!偷偷领先!偷偷领先! 关注我们,悄悄成为最优秀的自己!

简答题

37.工资管理
编写简单的工资管理程序,系统中包含工人(worker)和经理(manage),所有员工都有员工号、姓名、基本工资等属性。
工人:工人具有工作小时数和时薪的属性,工资计算方法为基本工资 + 工作小时数 * 时薪;
经理: 具有固定的月薪,计算方法为固定月薪。
根据以上的要求设计类,显示人员的信息和工资情况,运行结果如下:
工号:001,姓名:King,本月工资:10000
King的月薪是:10000
工号:002,姓名:Lily,本月工资:20000
Lily每天的工作时长:10小时
Lily的月薪是: 20000
class Person():
def __init__(self,id,name,salary):
self.id = id
self.name = name

def __str__(self):#查看对象,触发执行print语句
msg = '工号:{},姓名:{},本月工资:{}'.format(self.id,self.name,self.salary)
return msg
class Worker(Person):
def __init__(self,id,name,salary,hours,per_hour):
super().__init__(id,name,salary)
self.hours = hours
self.per_hour = per_hour
def getSalary(self):
money = self.hours * self.per_hour

return ③
class Manage(Person):
def __init__(self,id,name,salary,time):
super().__init__(id,name,salary)
self.time = time

def getSalary(self):
return self.salary,self.time
worker = Worker('001','King',2000,160,50)
sal = worker.getSalary()
print(worker)
print('King的月薪是:{}'.format(sal))
manage = Manage('002','Lily',20000,10)
④ , work_time = manage.getSalary()
print(manage)
print('{}每天的工作时长:{}小时'.format('Lily', ⑤ ))
print('Lily的月薪是:',sal)

使用微信搜索喵呜刷题,轻松应对考试!

答案:

① self.salary = salary② money += self.salary③ self.salary④ print(manage.getSalary())⑤ manage.time

解析:

【喵呜刷题小喵解析】:

① 在`Person`类的初始化方法中,需要为`salary`属性赋值,所以应该添加`self.salary = salary`。

② 在`Worker`类的`getSalary`方法中,工资计算方式是基本工资加上工作小时数乘以时薪,所以应该添加`money += self.salary`。

③ `getSalary`方法的返回值应该是工人的工资,所以应该返回`self.salary`。

④ 在`manage = Manage('002','Lily',20000,10)`之后,应该调用`getSalary`方法并打印结果,所以应该添加`print(manage.getSalary())`。

⑤ 要打印Lily每天的工作时长,应该使用`manage.time`,因为`Manage`类的`getSalary`方法返回的是`(salary, time)`。
创作类型:
原创

本文链接:37.工资管理编写简单的工资管理程序,系统中包含工人(worker)和经理(manage),所有员工

版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。

让学习像火箭一样快速,微信扫码,获取考试解析、体验刷题服务,开启你的学习加速器!

分享考题
share