用python计算工资工资_python练习-工资计算器
python练习-工资计算器
源代码如下:
#! /usr/bin/env python
def get_user_salary_sum():
salary = (raw_input("Please input your salary: "))
if len(salary) == 0:
salary = 0
print ("ERROR: Input invalid.")
exit(1)
return float(salary)
def get_user_jiaban_hours():
hours = (raw_input("Please input your jiaban hours: "))
if len(hours) == 0:
hours = 0
return float(hours)
def get_jiaban_salary(salary, hours):
jiaban_fee = hours * salary / 174 * 2
return jiaban_fee
def get_wancan_buzhu():
buzhu = (raw_input("Please input your supper buzhu times: "))
if len(buzhu) == 0:
buzhu = 0
return float(buzhu) * 10
def get_shebao_jishu():
basic = (raw_input("Please input your shebao jishu : "))
if len(basic) == 0:
basic = 2697
basic = float(basic)
if basic < 2697:
print "ERROR: Input invalid."
exit(1)
return basic
def get_shebao_e():
return 0.185 * get_shebao_jishu()
def get_5xian1jin():
# baoxian = float(raw_input("Please input your 5xian + 1jin: "))
baoxian = get_shebao_e()
return baoxian
def get_personal_leave_hours():
pl_hours = (raw_input("Please input your personal leave hours: "))
if len(pl_hours) == 0:
pl_hours = 0
return float(pl_hours)
def get_personal_leave_fee(salary):
return salary / 174 * get_personal_leave_hours()
def get_ill_leave_hours():
il_hours = (raw_input("Please input your ill leave hours: "))
if len(il_hours) == 0:
il_hours = 0
return float(il_hours)
def get_ill_leave_fee(salary):
return salary / 174 * get_ill_leave_hours() * 0.4
def get_total_salary():
salary = get_user_salary_sum()
hours = get_user_jiaban_hours()
total_sallary = salary + get_wancan_buzhu() + get_jiaban_salary(salary, hours) - get_5xian1jin()
total_sallary -= get_personal_leave_fee(salary) + get_ill_leave_fee(salary)
return total_sallary
def get_salary_tax(total):
sum_total = total
stage = [3500, 1500, 4500, 9000, 35000, 55000, 80000, ]
tax = [0.00, 0.03, 0.10, 0.20, 0.25, 0.30, 0.35, 0.45]
tax_stage = [0,] * len(tax)
for i, x in enumerate(stage):
for j in range(i + 1):
tax_stage[i] += int(stage[j])
fast = [0, 105, 555, 1005, 2755, 5505, 13505]
salary_tax = 0;
index_num = 0
if sum_total <= tax_stage[0]:
return 0
elif tax_stage[0] < sum_total <= tax_stage[1]:
index_num = 1
elif tax_stage[1] < sum_total <= tax_stage[2]:
index_num = 2
elif tax_stage[2] < sum_total <= tax_stage[3]:
index_num = 3
elif tax_stage[3] < sum_total <= tax_stage[4]:
index_num = 4
elif tax_stage[4] < sum_total <= tax_stage[5]:
index_num = 5
elif tax_stage[5] < sum_total <= tax_stage[6]:
index_num = 6
else:
index_num = 7
sum_total -= stage[0]
salary_tax += sum_total * tax[index_num] - fast[index_num - 1]
return salary_tax
def get_final_salary():
total = get_total_salary()
salary_tax = get_salary_tax(total)
print ("Tax: %.3f" % salary_tax)
final_salary = total - salary_tax
return final_salary
print ("Final salary: %.3f" % get_final_salary())
raw_input("Press to continue.")
python练习-工资计算器
用python计算工资工资_python练习-工资计算器相关推荐
- python计算生态规模_Python计算生态的构建
本专题的内容结构: 第一部分主要是:如何编写Python第三方库(包和模块) 第二部分主要是:如何编写带有c语言扩展的Python第三方库(包和模块) 第一部分的结构: unit1:深入理解Pytho ...
- python计算圆周率近似值_python计算圆周率pi的方法
本文实例讲述了python计算圆周率pi的方法.分享给大家供大家参考.具体如下: from sys import stdout scale = 10000 maxarr = 2800 arrinit ...
- python计算excel平均值_python计算excel平均值和标准差
############################################## ######## python计算excel平均值和标准差 ####### ############### ...
- 怎样用python计算π的值_Python 计算 π 值的简单示例
对python这个高级语言感兴趣的小伙伴,下面一起跟随编程之家 jb51.cc的小编两巴掌来看看吧! π是一个无数人追随的真正的神奇数字.我不是很清楚一个永远重复的无理数的迷人之处.在我看来,我乐于计 ...
- python计算化学浓度_python 计算化学
信息举报 时间:2021-02-11 本页为您甄选多篇描写python 计算化学,python 计算化学精选,python 计算化学大全,有议论,叙事 ,想象等形式.文章字数有400字.600字.80 ...
- 用python计算两点坐标_python 计算方位角实例(根据两点的坐标计算)
知道两点坐标,怎么计算两点方向的方位角? 答:首先计算坐标增量dx,dy(两个对应坐标分量相减,终点的减始点的). 若dx,dy中有一个为零时,根据另一个的正负决定方位角(0,90,180,270这四 ...
- python计算excel数据_python计算excel平均值和标准差
############################################## ######## python计算excel平均值和标准差 ####### ############### ...
- python计算平方面积_python中求平方
python学习(2)--变量与表达式 python学习(2)--变量与表达式 1.与java和c语言相通,python中也分为四种运算符: (1)算数运算符(如:+.-.*./); 学过java或者 ...
- python计算分段函数_Python练习题2.2计算分段函数
本题目要求计算下列分段函数f(x)的值: 输入格式: 输入在一行中给出实数x. 输出格式: 在一行中按"f(x) = result"的格式输出,其中x与result都保留一位小数. ...
- python计算密集型任务_Python多进程和多线程测试比高低,只为证明谁是最快的“仔”
目的 前面分别详细介绍了python的多进程和多线程,如果还没看前面文章的,请先看下之前的文章详解内容.有任何疑问请留言.那这里就不再对多线程和多进程的实现和用法再赘述了.那各位同学学习了python ...
最新文章
- mysql 2006测试_狂神说MySQL06:事务和索引
- ##安装MySql数据库并解决如果安装出错卸载的注意事项
- mongoDB连接配置
- 互联网项目管理流程(SOP)总结
- pcie总线频率和带宽_从1.0到6.0的飞跃之路,PCIe总线技术发展解析
- word中怎么加脚注不分栏_如何在Microsoft Word 2010中使用脚注
- 使用Spring Validation 完成后端数据校验
- 彻底解决IE9 文本框无法输入文字,IE窗口闪烁问题(亲测)
- 实物短缺下的现货白银操作建议
- 是真正的发现,还是可耻的堕落?
- 2021年度COMPUTEX论坛汇聚科技巨头,共同解锁未来技术新趋势
- Makdown编辑器哪个好
- 时间复杂度和空间复杂度复习 (一)
- 【辅助驾驶】Python在Windows系统下实现TTS(文字转语音)
- 深度学习工作站攒机指南
- pb11 打印 自定义纸张_如何设置datawindow的打印纸张大小为指定的长、宽
- npm报错`webpack-dev-server --inline --progress --config build/webpack.dev.conf.js`
- 带外数据:TCP紧急模式分析
- 微信小程序毕业设计 基于微信电影院选座订票售票小程序系统开题报告
- vue加载supermap iclcent-ol (iclient for openlayer)