个税起征点上调至5000,用Python算一算少交多少税

简介:

aaf6adf5de9c7f99368ad5f5103d634d91da1bc7

今天出了一个重磅消息,个税起征点从3500上调到5000啦!

广大IT农民工的生活压力又减轻了一些,有没有

晚上加一个鸡腿,要不要~

开心归开心,我们来用Python算一算,新的规则下,我们需要交多少税,比原先少交多少税。

下面的这张表是税率表,这是对超过免征额部分的收入征收的税率

8e75df1fe50e1efd0e5ab904a6b2252c0428823d

这次调整的是免征额,之前是3500,现在是5000,税率部分没有发生变化。

我们用Python来写两个程序,一个计算旧的工资所得税,一个计算新的工资所得税。

下面的函数old_tax用来计算旧的所得税

 

import sys
import bisect

def old_tax(salary):
if salary < 3500 :
return 0.0

above = salary - 3500

ranges = [ 0 , 1500 , 4500 , 9000 , 35000 , 55000 , 80000 ]
rate = [ .03 , .1 , .2 , .25 , .30 , .35 , .45 ]
i = bisect.bisect_left(ranges, above)
j = 0
tax = 0.0
while j < i:
if j+ 1 < i:
tax += (ranges[j+ 1 ]-ranges[j]) * rate[j]
else :
tax += (above-ranges[j]) * rate[j]
j += 1

return tax

下面的函数new_tax用来计算新的所得税

 

def new_tax(salary):
if salary < 5000:
return 0.0

above = salary - 5000

ranges = [ 0 , 1500 , 4500 , 9000 , 35000 , 55000 , 80000 ]
rate = [ .03 , .1 , .2 , .25 , .30 , .35 , .45 ]
i = bisect.bisect_left(ranges, above)
j = 0
tax = 0.0
while j < i:
if j+ 1 < i:
tax += (ranges[j+ 1 ]-ranges[j]) * rate[j]
else :
tax += (above-ranges[j]) * rate[j]
j += 1

return tax

下面是我们的主函数

 

if __name__ == "__main__":
if len(sys.argv) < 2:
print( "Usage: {} <salary>".format(sys.argv[ 0]))
sys.exit( 1)

salary = float(sys.argv[ 1 ])
old_tax = old_tax(salary)
new_tax = new_tax(salary)
print( "old: {}, new: {}" .format(old_tax, new_tax))

上面的代码保存在tax.py中。

接下来,我们来用tax.py算一算不同工资水平的个税

 

python3 tax.py 5000
old: 45.0, new: 0.0

每月5000元的工资,以前要交45元的个税,起征点上调到5000后,就不用交税了。

 

python3 tax.py 10000
old: 745.0, new: 445.0

每月10000元的工资,以前要交745元的个税,现在只要445元,比原先少交300元。

 

python3 tax.py 20000
old: 3120.0, new: 2745.0

每月20000元的工资,以前要交3120元的个税,现在交2745元,比原先少交375元。

 

python3 tax.py 50000
old: 11195.0, new: 10745.0

每月50000元的工资,以前要交11195元的个税,现在交10745元,比原先少交450元。

 

python3 tax.py 100000
old: 29920.0, new: 29245.0

每月10万元的工资,以前要交29920元的个税,现在交29245元,比原先少交675元。

大家可以复制一下代码,算算自己可以少交多少税。

相关文章
|
6月前
|
开发者 Python
Python 之父爆料:明年至少令 Python 提速 1 倍!
Python 之父爆料:明年至少令 Python 提速 1 倍!
41 0
|
6月前
|
数据采集 数据可视化 Python
Python分析香港26281套在售二手房数据
Python分析香港26281套在售二手房数据
|
6月前
|
算法 程序员 Python
年底工资总结,实例教你用Python计算个税 依法纳税做好公民(1)
年底工资总结,实例教你用Python计算个税 依法纳税做好公民(1)
|
6月前
|
数据采集 数据可视化 数据挖掘
Python霸占“8座大山”,你的领域出现了吗?
Python霸占“8座大山”,你的领域出现了吗?
|
机器学习/深度学习 Python
蓝桥杯-全球变暖-python
蓝桥杯-全球变暖-python
90 0
|
Python
python股票量化交易(5)---股价跳空缺口
python股票量化交易(5)---股价跳空缺口
751 1
python股票量化交易(5)---股价跳空缺口
|
Python
python股票量化交易(8)---K线图:锤头,射击之星,早晨之星
python股票量化交易(8)---K线图:锤头,射击之星,早晨之星
685 0
python股票量化交易(8)---K线图:锤头,射击之星,早晨之星
|
Python
python股票量化交易(15)---使用pyqt5构建股票交易北向资金
python股票量化交易(15)---使用pyqt5构建股票交易北向资金
573 0
python股票量化交易(15)---使用pyqt5构建股票交易北向资金
python-CFA-计算实现理财目标需要准备的现金流期数
python-CFA-计算实现理财目标需要准备的现金流期数
71 0
python-分水岭-技术指标
python-分水岭-技术指标
158 0