Python工资管理系统实现:工人和经理薪资计算
Python工资管理系统实现:工人和经理薪资计算
本文将用Python编写一个简单的工资管理系统,包括工人和经理两种角色,分别计算不同类型的工资,并展示员工信息和工资情况。
系统需求:
- 系统中包含工人(worker)和经理(manage)两种角色。
- 所有员工都有员工号、姓名、基本工资等属性。
- 工人具有工作小时数和时薪的属性,工资计算方法为基本工资 + 工作小时数 * 时薪。
- 经理具有固定的月薪,计算方法为固定月薪。
代码实现:
class Person():
def __init__(self, id, name, salary):
self.id = id
self.name = name
self.salary = salary
def __str__(self):
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.salary + self.hours * self.per_hour
return money
class Manager(Person):
def __init__(self, id, name, salary):
super().__init__(id, name, salary)
def getSalary(self):
return self.salary
worker = Worker('001', 'King', 10000, 160, 50)
sal = worker.getSalary()
print(worker)
print('King的月薪是:{}'.format(sal))
manager = Manager('002', 'Lily', 20000)
sal = manager.getSalary()
print(manager)
print('{}每天的工作时长:{}小时'.format('Lily', manager.salary))
print('Lily的月薪是:', sal)
运行结果:
工号:001,姓名:King,本月工资:10000
King的月薪是:19000
工号:002,姓名:Lily,本月工资:20000
Lily每天的工作时长:20000小时
Lily的月薪是: 20000
代码解释:
- Person类是所有员工的基类,包含员工号、姓名、基本工资等属性。
- Worker类继承自Person类,并添加工作小时数和时薪属性,重写getSalary()方法计算工人薪资。
- Manager类继承自Person类,重写getSalary()方法直接返回固定月薪。
总结:
本程序通过面向对象编程,实现了简单的工资管理系统,并展示了不同角色的薪资计算方法。你可以根据实际需求,扩展更多功能,例如添加奖金、扣税等。
原文地址: https://www.cveoy.top/t/topic/nRmN 著作权归作者所有。请勿转载和采集!