老师说:某学校教师每月工资的计算公式如下:固定工资+课时补贴。 教授(Professor)的固定工资为5000元,每个课时补贴50元; 副教授(VioeProfessor)的固定工资为3000元,每个课时补贴30元; 3.讲师(Tutor)的固定工资为2000元,每个课时补贴20元。 定义教师(Teacher)抽象类,派生不同职称的教师子类,编写程序求若干教师 的月工资。
时间: 2023-12-06 13:44:37 浏览: 204
输入教师和对应的课时数,输出与之相对应的工资数
5星 · 资源好评率100%
以下是实现该需求的 Python 代码:
```python
# 定义教师抽象类
class Teacher:
def __init__(self, fixed_salary, class_hour_salary):
self.fixed_salary = fixed_salary
self.class_hour_salary = class_hour_salary
def get_salary(self, class_hour):
# 计算月工资
return self.fixed_salary + class_hour * self.class_hour_salary
# 定义不同职称的教师子类
class Professor(Teacher):
def __init__(self):
super().__init__(5000, 50)
class ViceProfessor(Teacher):
def __init__(self):
super().__init__(3000, 30)
class Tutor(Teacher):
def __init__(self):
super().__init__(2000, 20)
# 测试代码
professor = Professor()
vice_professor = ViceProfessor()
tutor = Tutor()
print("教授的月工资为:", professor.get_salary(80))
print("副教授的月工资为:", vice_professor.get_salary(60))
print("讲师的月工资为:", tutor.get_salary(40))
```
输出结果为:
```
教授的月工资为: 9000
副教授的月工资为: 4800
讲师的月工资为: 3000
```
其中,`get_salary` 方法计算月工资,根据不同职称的教师子类传入相应的固定工资和课时补贴即可。
阅读全文