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 相关文章推荐
Python 开发Activex组件方法
Nov 08 Python
Python中的自定义函数学习笔记
Sep 23 Python
python 日志增量抓取实现方法
Apr 28 Python
python统计多维数组的行数和列数实例
Jun 23 Python
详解python 注释、变量、类型
Aug 10 Python
解决pycharm py文件运行后停止按钮变成了灰色的问题
Nov 29 Python
python正则表达式实例代码
Mar 03 Python
解决pyPdf和pyPdf2在合并pdf时出现异常的问题
Apr 03 Python
Flask模板引擎Jinja2使用实例
Apr 23 Python
Python更换pip源方法过程解析
May 19 Python
python代码实现扫码关注公众号登录的实战
Nov 01 Python
Python机器学习应用之工业蒸汽数据分析篇详解
Jan 18 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
建立动态的WML站点(二)
2006/10/09 PHP
apache rewrite_module模块使用教程
2008/01/10 PHP
fetchAll()与mysql_fetch_array()的区别详解
2013/06/05 PHP
PHP fopen()和 file_get_contents()应用与差异介绍
2014/03/19 PHP
php实现插入排序
2015/03/29 PHP
超详细的php用户注册页面填写信息完整实例(附源码)
2015/11/17 PHP
使用WordPress发送电子邮件的相关PHP函数用法解析
2015/12/15 PHP
Laravel中获取路由参数Route Parameters的五种方法示例
2017/09/29 PHP
JavaScript中的prototype使用说明
2010/04/13 Javascript
JQuery从头学起第一讲
2010/07/04 Javascript
jquery事件重复绑定的快速解决方法
2014/01/03 Javascript
使用Javascript简单实现图片无缝滚动
2014/12/05 Javascript
JQuery简单实现锚点链接的平滑滚动
2015/05/03 Javascript
jquery使整个div区域可以点击的方法
2015/06/24 Javascript
学习JavaScript设计模式之代理模式
2016/01/12 Javascript
微信公众号  提示:Unauthorized API function 问题解决方法
2016/12/05 Javascript
JavaScript实现格式化字符串函数String.format
2016/12/16 Javascript
微信小程序 仿美团分类菜单 swiper分类菜单
2017/04/12 Javascript
详解vue.js+UEditor集成 [前后端分离项目]
2017/07/07 Javascript
node.js使用fs读取文件出错的解决方案
2019/10/23 Javascript
详解vue-router 动态路由下子页面多页共活的解决方案
2019/12/22 Javascript
一看就会的vuex实现登录验证(附案例)
2020/01/09 Javascript
[02:22]2018DOTA2亚洲邀请赛VG赛前采访
2018/04/03 DOTA
python开发中module模块用法实例分析
2015/11/12 Python
Django中更改默认数据库为mysql的方法示例
2018/12/05 Python
python利用7z批量解压rar的实现
2019/08/07 Python
python openvc 裁剪、剪切图片 提取图片的行和列
2019/09/19 Python
python子线程退出及线程退出控制的代码
2019/10/16 Python
pytorch的batch normalize使用详解
2020/01/15 Python
一文了解python 3 字符串格式化 F-string 用法
2020/03/04 Python
浅谈PyTorch中in-place operation的含义
2020/06/27 Python
Python 爬虫性能相关总结
2020/08/03 Python
Invicta手表官方商店:百年制表历史的瑞士腕表品牌
2019/09/26 全球购物
幼儿园庆六一活动方案
2014/03/06 职场文书
第一批党的群众路线教育实践活动总结报告
2014/07/03 职场文书
详解Go与PHP的语法对比
2021/05/29 PHP