python假设税前工资和税率如下_【Python】税前税后工资转换

【需求】

因为自己最近开始关注工资的事情,就在网上查找税前税后工资怎么换算……网上有详细讲解的,但是你需要对照规则一项一项地手算。而且我可能有很多数据要换算……看起来是在太难受了,不如写个Python程序吧~

税前转换税后的计算方法参考了 @肖半仙 的回答:大学生刚毕业,不知道工资是怎么计算的?(扣税,五险一金等等)求教知乎大神​www.zhihu.com

我认真地理解了她的回答,但不知道我的理解到位了没有:

税后=税前-五险一金-税收

其中税收又与交税基数和税率有关,基本上可以认为,交税基数=税前-五险一金-3000(基本上的意思是,如果公积金和补充公积金合起来比例超过12%,那么超出的部分需要计入交税基数)。其中的税率也是与基数有关,分区间税率不同。

其中的税率数据参考了百度百科:

另外税后转换税前的方法,是我自己推到的,这个有一点点难度,大概是需要解数学方程,但是方程的参数是变量,而且是阶跃形式的变量(当然也很有可能我数学不够好……扯了好一会儿)

附:用到的税率表

【效果】开始运行,有3个选择:0,1或者quit,其他输入非法

税前税后的转换,税前10000税后7315,结果是对应的

【测试】

1、边界输入:如0,80000+,均可以正确转换

2、非法输入:输入必须能够int(input)不报错,否则continue重新输入

【实现中的主要难点】

用时:1个白天+1个晚上

1、首先实现税前转税后,算法我改进了4次:

第一次是人类思维,用if-else手写判断缴税基数在哪个区间里;

然后觉得太傻了,代码里有很多重复的部分,如果这个区间更长,怎么办?于是写成了for循环;

但是写完还是觉得不好,用上了for,但是看起来逻辑什么的还是很乱,于是想到这个场景很适合用递归,就封装成一个函数,然后自己调用自己;

这个时候已经好多了,但最后函数定义的参数上做了一点改动,成为现在最后的版本,个人感觉更好看。

"""

#法1:

if (revenue_base<0):

revenue=0

elif ((revenue_base-1500)<0):

revenue&#

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值