Sample personal income tax calculator implemented by Python
- 2020-10-31 21:50:09
- OfStack
This article illustrates the personal income tax calculator implemented by Python. To share for your reference, the details are as follows:
# -*- 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)
Operation results:
[
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: Here are some other online computing tools for your reference:
Online Personal Income Tax Calculator (2008 edition) :
http://tools.ofstack.com/jisuanqi/tax_calc
Online Personal Income Tax Calculation Tool (2011 edition) :
http://tools.ofstack.com/jisuanqi/tax_jisuanqi
Online Bank Mortgage Calculator:
http://tools.ofstack.com/jisuanqi/anjie_calc
Online deposit Calculator:
http://tools.ofstack.com/jisuanqi/cunkuan_calc
Online financial investment calculator:
http://tools.ofstack.com/jisuanqi/touzilicai_calc
Online endowment Insurance Deposit/Endowment planning Calculator:
http://tools.ofstack.com/jisuanqi/yanglao_calc
For more information about Python, please refer to Python Math Skills Summary, Python Data Structure and Algorithm Tutorial, Python Function Skills Summary, Python String Manipulation Skills Summary, Python Introduction and Advanced Classic Tutorial and Python File and Directory Manipulation Skills Summary.
I hope this article is helpful for Python programming.