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

 更新时间:2018年06月01日 12:10:07   作者:luoganttcc  
这篇文章主要介绍了Python实现的个人所得税计算器,涉及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可视化神器pyecharts绘制桑基图

    Python可视化神器pyecharts绘制桑基图

    这篇文章主要介绍了Python可视化神器pyecharts绘制桑基图,即桑基能量分流图,也叫桑基能量平衡图,更多相关介绍具有一定的参考价值,需要的朋友可以参考一下
    2022-07-07
  • Python机器学习之Kmeans基础算法

    Python机器学习之Kmeans基础算法

    这篇文章主要介绍了Python机器学习之Kmeans基础算法,文中有非常详细的代码示例,对正在学习python的小伙伴们有非常好的帮助,需要的朋友可以参考下
    2021-04-04
  • Python基础之Numpy的基本用法详解

    Python基础之Numpy的基本用法详解

    这篇文章主要介绍了Python基础之Numpy的基本用法详解,文中有非常详细的代码示例,对正在学习python基础的小伙伴们有非常好的帮助,需要的朋友可以参考下
    2021-05-05
  • Python全景系列之数据类型大盘点

    Python全景系列之数据类型大盘点

    这篇文章主要为大家介绍了Python全景系列之数据类型的盘点解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-05-05
  • 11个并不被常用但对开发非常有帮助的Python库

    11个并不被常用但对开发非常有帮助的Python库

    这篇文章主要介绍了11个并不被常用但对开发非常有帮助的Python库,这些库大都被放在Github上开源、并且经过一段时间的编写和维护,对Python开发有一定的帮助,需要的朋友可以参考下
    2015-03-03
  • Python3二分查找库函数bisect(),bisect_left()和bisect_right()的区别

    Python3二分查找库函数bisect(),bisect_left()和bisect_right()的区别

    这篇文章主要介绍了Python3二分查找库函数bisect(),bisect_left()和bisect_right()的区别,本文通过示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-03-03
  • python openssl模块安装及用法

    python openssl模块安装及用法

    在本篇文章里小编给大家整理的是一篇关于python openssl模块安装及用法,有需要的朋友们可以学习下。
    2020-12-12
  • python-str,list,set间的转换实例

    python-str,list,set间的转换实例

    今天小编就为大家分享一篇python-str,list,set间的转换实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-06-06
  • python七种方法判断字符串是否包含子串

    python七种方法判断字符串是否包含子串

    这篇文章主要介绍了python七种方法判断字符串是否包含子串,帮助大家更好的理解和学习python,感兴趣的朋友可以了解下
    2020-08-08
  • python实现按任意键继续执行程序

    python实现按任意键继续执行程序

    本文给大家分享的是如何使用Python脚本实现按任意键继续执行程序的代码,非常的简单实用,有需要的小伙伴可以参考下
    2016-12-12

最新评论