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