Python实现的个人所得税计算器示例


Posted in Python onJune 01, 2018

本文实例讲述了Python实现的个人所得税计算器。分享给大家供大家参考,具体如下:

# -*- coding: utf-8 -*-
"""
Created on Sat Apr 15 17:55:54 2017
@author: Administrator
"""
#!/bin/env python
# author: zhouhh
# email: ablozhou@gmail.com
# money.py
def money(all_salary,has_welfare,has_housing_fund):
 money = all_salary
 bj_average_salary=3322;#in 2008 using average salary of year 2007
 min = bj_average_salary*0.6
 max = bj_average_salary*3
 welfare_fund = all_salary
 if all_salary > max:
  welfare_fund = max
 if all_salary < min:
  welfare_fund = min
 print("total money=%.2f"%all_salary)
 medical_fund=welfare_fund*0.02+3
 retire_fund=welfare_fund*0.08
 unemploy_fund =welfare_fund*0.005
 if not has_welfare:
  welfare_fund = 0
  medical_fund=0
  retire_fund=0
  unemploy_fund =0
 else:
  print("medical fund = %d*0.02+3=%.2f"%(welfare_fund,medical_fund) )
  print("retirement fund = %d*0.08 =%.2f"%(welfare_fund,retire_fund) )
  print("unemployment fund = %d*0.005=%.2f"%(welfare_fund,unemploy_fund ))
 housing_fund=welfare_fund*0.12
 if not has_housing_fund:
  housing_fund = 0
 else:
  print("housing fund = %d*0.12=%.2f"%(welfare_fund,housing_fund))
 all_welfare_fund=medical_fund+retire_fund+unemploy_fund +housing_fund
 print("all welfare fund=%.2f"% all_welfare_fund)
 money -=all_welfare_fund
 before_tax = money
 print("before tax money =%.2f"%before_tax )
 if before_tax < 2000 :
  print(" you have no tax,you own money=%.2f"%before_tax)
  return before_tax
  #after 2008.3.1 tax
 l1=500*0.05 #2000-2500, %5
 l2=1500*0.10 #2500-4000 %10    +=25
 l3=3000*0.15 #4000-7000 %0.15   +=175
 l4=15000*0.20 #7000-22000 %20   += 625
 l5=20000*0.25 #22000-42000 %25  +=3625
 l6=20000*0.30 #42000-62000 %30  +=8625
 l7=20000*0.35 #62000-82000 %35  +=14625
 l8=20000*0.40 #82000-102000 %40 +=21625
 l9=0           # +=29625
 money -=2000
 tax=0;
 if money<500:
  l1=money*0.05
  tax=l1
  print("you are in level 1,tax =%.2f, you own money=%.2f"%(tax,(before_tax-tax)))
  return before_tax-tax
 money -= 500
 if money<1500:
  l2=money*0.10
  tax=l1+l2
  print("you are in level 2,tax =%.2f, you own money=%.2f"%(tax,(before_tax-tax)))
  return before_tax-tax
 money -= 1500
 if money<3000:
  l3=money*0.15
  tax=l1+l2+l3
  print("you are in level 3,tax =%.2f, you own money=%.2f"%(tax,(before_tax-tax)))
  return before_tax-tax
 money -= 3000
 if money<15000:
  l4=money*0.20
  tax=l1+l2+l3+l4
  print("you are in level 4,tax =%.2f, you own money=%.2f"%(tax,(before_tax-tax)))
  return before_tax-tax
 money -= 15000
 if money<20000:
  l5=money*0.25
  tax=l1+l2+l3+l4+l5
  print("you are in level 5,tax =%.2f, you own money=%.2f"%(tax,(before_tax-tax)))
  return before_tax-tax
 money -= 20000
 if money<20000:
  l6=money*0.30
  tax=l1+l2+l3+l4+l5+l6
  print("you are in level 6,tax =%.2f, you own money=%.2f"%(tax,(before_tax-tax)))
  return before_tax-tax
 money -= 20000
 if money<20000:
  l7=money*0.35
  tax=l1+l2+l3+l4+l5+l6+l7
  print("you are in level 7,tax =%.2f, you own money=%.2f"%(tax,(before_tax-tax)))
  return before_tax-tax
 money -= 20000
 if money<20000:
  l8=money*0.40
  tax=l1+l2+l3+l4+l5+l6+l7+l8
  print("you are in level 8,tax =%.2f, you own money=%.2f"%(tax,(before_tax-tax)))
  return before_tax-tax
 money -= 20000
 l9=money*0.45
 tax=l1+l2+l3+l4+l5+l6+l7+l8+l9
 print("you are in level 9,tax =%.2f, you own money=%.2f"%(tax,(before_tax-tax)))
 return before_tax-tax
money(10000,0,0)

运行结果:

total money=10000.00
all welfare fund=0.00
before tax money =10000.00
you are in level 4,tax =1225.00, you own money=8775.00

Python 相关文章推荐
深入理解Javascript中的this关键字
Mar 27 Python
Python函数可变参数定义及其参数传递方式实例详解
May 25 Python
Python使用urllib2模块实现断点续传下载的方法
Jun 17 Python
Android应用开发中Action bar编写的入门教程
Feb 26 Python
深入了解Python数据类型之列表
Jun 24 Python
Python随机数用法实例详解【基于random模块】
Apr 18 Python
使用 Django Highcharts 实现数据可视化过程解析
Jul 31 Python
Pandas操作CSV文件的读写实现方法
Nov 13 Python
pytorch制作自己的LMDB数据操作示例
Dec 18 Python
python os模块常用的29种方法使用详解
Jun 02 Python
Python selenium如何打包静态网页并下载
Aug 12 Python
Python绘制K线图之可视化神器pyecharts的使用
Mar 02 Python
Python模拟登录的多种方法(四种)
Jun 01 #Python
Python使用re模块正则提取字符串中括号内的内容示例
Jun 01 #Python
Python爬虫获取图片并下载保存至本地的实例
Jun 01 #Python
python操作mysql代码总结
Jun 01 #Python
Python使用pylab库实现绘制直方图功能示例
Jun 01 #Python
python的格式化输出(format,%)实例详解
Jun 01 #Python
Python获取昨天、今天、明天开始、结束时间戳的方法
Jun 01 #Python
You might like
WIN98下Apache1.3.14+PHP4.0.4的安装
2006/10/09 PHP
PHP代码审核的详细介绍
2013/06/13 PHP
PHP中使用substr()截取字符串出现中文乱码问题该怎么办
2015/10/21 PHP
php实现mysql数据库连接操作及用户管理
2015/11/08 PHP
laravel框架 laravel-admin上传图片到oss的方法
2019/10/13 PHP
JavaScript效率调优经验
2009/06/04 Javascript
javascript中bind函数的作用实例介绍
2014/09/28 Javascript
jQuery中$.get、$.post、$.getJSON和$.ajax的用法详解
2014/11/19 Javascript
JavaScript代码实现左右上下自动晃动自动移动
2016/04/08 Javascript
JS获取复选框的值,并传递到后台的实现方法
2016/05/30 Javascript
浅谈js和css内联外联注意事项
2016/06/30 Javascript
jQuery实现自动输入email、时间和域名的方法
2016/08/24 Javascript
jQuery Ajax使用FormData对象上传文件的方法
2016/09/07 Javascript
详解XMLHttpRequest(一)同步请求和异步请求
2016/09/14 Javascript
javascript匀速动画和缓冲动画详解
2016/10/20 Javascript
js正则表达式验证密码强度【推荐】
2017/03/03 Javascript
微信小程序 列表的上拉加载和下拉刷新的实现
2017/04/01 Javascript
json的结构与遍历方法实例分析
2017/04/25 Javascript
Nodejs读取文件时相对路径的正确写法(使用fs模块)
2017/04/27 NodeJs
vue加载完成后的回调函数方法
2018/09/07 Javascript
javascriptvoid(0)含义以及与&quot;#&quot;的区别讲解
2019/01/19 Javascript
使用flow来规范javascript的变量类型
2019/09/12 Javascript
在vue中使用echars实现上浮与下钻效果
2019/11/08 Javascript
Python代码的打包与发布详解
2014/07/30 Python
Python算法应用实战之队列详解
2017/02/04 Python
python RabbitMQ 使用详细介绍(小结)
2018/11/08 Python
Python秒算24点实现及原理详解
2019/07/29 Python
优质的学校老师推荐信
2013/10/28 职场文书
有针对性的求职自荐信
2013/11/14 职场文书
行政管理毕业生自荐信
2014/02/24 职场文书
团队经理竞聘书
2014/03/31 职场文书
员工辞职信范文
2015/03/02 职场文书
虎兄虎弟观后感
2015/06/12 职场文书
Mysql服务添加 iptables防火墙策略的方案
2021/04/29 MySQL
JavaScript继承的三种方法实例
2021/05/12 Javascript
vue如何清除浏览器历史栈
2022/05/25 Vue.js