python中calss的用法

代码示例

python 复制代码
class Employee:
    def __init__(self,name,id):
        self.name = name
        self.id = id
    
    def print_info(self):
        print(f"员工名字:{self.name},工号:{self.id}")

# 全职员工类:继承Employee,仅需月薪参数
class FullTimeEmployee(Employee):
    def __init__(self,name,id,monthly_salary):
        super().__init__(name,id)  # 调用父类初始化方法,继承姓名和工号
        self.monthly_salary = monthly_salary

    def calculate_monthly_salary(self):
        return self.monthly_salary  # 全职员工月薪=固定月薪

# 兼职员工类:继承Employee,需日薪和工作天数参数
class PartTimeEmployee(Employee):
    def __init__(self,name,id,daily_salary,work_days):
        super().__init__(name,id)
        self.daily_salary = daily_salary  # 日薪
        self.work_days = work_days        # 月工作天数

    def calculate_monthly_salary(self):
        return self.daily_salary * self.work_days  # 兼职月薪=日薪×工作天数

# 正确创建全职员工实例(传3个参数:姓名、工号、月薪)
zhangsan = FullTimeEmployee("zhangsan",1,10000)  # 修正原代码月薪100000可能是笔误,也可保留
# 正确创建兼职员工实例(传4个参数:姓名、工号、日薪、工作天数)
lisi = PartTimeEmployee("lisi",2,230,15)

# 调用父类的print_info方法打印员工信息
zhangsan.print_info()
lisi.print_info()

# 可选:打印月薪计算结果,验证功能
print(f"张三月薪:{zhangsan.calculate_monthly_salary()}元")
print(f"李四月薪:{lisi.calculate_monthly_salary()}元")
相关推荐
m0_748554815 小时前
golang如何实现用户订阅偏好管理_golang用户订阅偏好管理实现总结
jvm·数据库·python
smj2302_796826526 小时前
解决leetcode第3911题.移除子数组元素后第k小偶数
数据结构·python·算法·leetcode
阿正呀6 小时前
Redis怎样实现本地缓存的高效失效通知
jvm·数据库·python
九转成圣6 小时前
Java 性能优化实战:如何将海量扁平数据高效转化为类目字典树?
java·开发语言·json
SmartRadio6 小时前
ESP32-S3 双模式切换实现:兼顾手机_路由器连接与WiFi长距离通信
开发语言·网络·智能手机·esp32·长距离wifi
2501_901200537 小时前
mysql如何设置InnoDB引擎参数_优化innodb_buffer_pool
jvm·数据库·python
laowangpython7 小时前
Rust 入门:GitHub 热门内存安全编程语言
开发语言·其他·rust·github
我叫汪枫7 小时前
在后台管理系统中,如何递归和选择保留的思路来过滤菜单
开发语言·javascript·node.js·ecmascript
_.Switch7 小时前
东方财富股票数据JS逆向:secids字段和AES加密实战
开发语言·前端·javascript·网络·爬虫·python·ecmascript
软件技术NINI7 小时前
webkit简介及工作流程
开发语言·前端·javascript·udp·ecmascript·webkit·yarn