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

yipeiwu_com7年前Python基础

本文实例讲述了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

PS:这里再为大家推荐几款相关的在线计算工具供大家参考:

在线个人所得税计算器(2008版):
http://tools.jb51.net/jisuanqi/tax_calc

在线个人所得税计算工具(2011版):
http://tools.jb51.net/jisuanqi/tax_jisuanqi

在线银行按揭贷款计算器:
http://tools.jb51.net/jisuanqi/anjie_calc

在线存款计算器:
http://tools.jb51.net/jisuanqi/cunkuan_calc

在线投资理财计算器:
http://tools.jb51.net/jisuanqi/touzilicai_calc

在线养老保险缴存/养老规划计算器:
http://tools.jb51.net/jisuanqi/yanglao_calc

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python数学运算技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总

希望本文所述对大家Python程序设计有所帮助。

相关文章

Python datetime和unix时间戳之间相互转换的讲解

python datetime和unix时间戳之间相互转换 1、代码: import time import datetime # 1、datetime转unix时间戳...

python如何实现一个刷网页小程序

python如何实现一个刷网页小程序

前言 python 打开浏览器,可以做简单的刷网页的小程序 and 其他有想象力的程序。不过仅供学习,勿用非法用途。 python的webbrowser模块支持对浏览器进行一些操作...

MySQL中表的复制以及大型数据表的备份教程

表复制 mysql拷贝表操作我们会常常用到,下面就为您详细介绍几种mysql拷贝表的方式,希望对您学习mysql拷贝表方面能够有所帮助。 假如我们有以下这样一个表: id use...

利用Python实现网络测试的脚本分享

前言 最近同学让我帮忙写一个测试网络的工具。由于工作上的事情,断断续续地拖了很久才给出一个相对完整的版本。其实,我Python用的比较少,所以基本都是边查资料边写程序。 程序的主要逻辑如...

Python解析xml中dom元素的方法

本文实例讲述了Python解析xml中dom元素的方法。分享给大家供大家参考。具体实现方法如下: 复制代码 代码如下:from xml.dom import minidom try: &...