Python中使用工时、时薪及函数计算净薪资的问题
薪资计算实现方案
计算规则
- 核心逻辑:通过时薪与工时计算净薪资,需使用指定的全部函数
- 加班薪资:工时超过40小时的部分,按双倍时薪计算
- 扣除项明细:
- 所得税:总薪资的10%
- 固定扣除:医疗保险50美元
- 比例扣除:社会保障(总薪资的6%)、养老金(总薪资的3%)
完整实现代码
# 计算总薪资 def calculate_gross_pay(hourly_wage, hours_worked): if hours_worked > 40: regular_pay = 40 * hourly_wage overtime_pay = (hours_worked - 40) * hourly_wage * 2 return regular_pay + overtime_pay return hourly_wage * hours_worked # 计算所有扣除项总和 def calculate_deductions(gross_pay): tax = gross_pay * 0.10 social_security = gross_pay * 0.06 pension = gross_pay * 0.03 health_insurance = 50 return tax + social_security + pension + health_insurance # 计算净薪资 def calculate_net_pay(hourly_wage, hours_worked): gross = calculate_gross_pay(hourly_wage, hours_worked) deductions = calculate_deductions(gross) return gross - deductions # 示例测试 if __name__ == "__main__": # 示例:时薪20美元,工作45小时 net = calculate_net_pay(20, 45) print(f"净薪资: ${net:.2f}")
函数说明
calculate_gross_pay:区分正常工时与加班工时,计算税前总薪资calculate_deductions:基于总薪资计算所有应扣除的费用总和calculate_net_pay:串联前两个函数,输出最终净薪资
内容的提问来源于stack exchange,提问作者bhruhgehrs
相关产品推荐
相关产品推荐

