zoukankan      html  css  js  c++  java
  • 5万的工资,用Python算一算少交多少税?

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

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

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


    这里还注意不管你是为了Python就业还是兴趣爱好,记住:项目开发经验永远是核心,如果你没有2020最新python入门到高级实战视频教程,可以去小编的Python交流.裙 :七衣衣九七七巴而五(数字的谐音)转换下可以找到了,里面很多新python教程项目,还可以跟老司机交流讨教!

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

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


    这次调整的是免征额,之前是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元。

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

    对了,月薪十万以上的朋友,麻烦联系一下强哥,我们交个朋友~

    最后注意:不管你是为了Python就业还是兴趣爱好,记住:项目开发经验永远是核心,如果你没有2020最新python入门到高级实战视频教程,可以去小编的Python交流.裙 :七衣衣九七七巴而五(数字的谐音)转换下可以找到了,里面很多新python教程项目,还可以跟老司机交流讨教!

    本文的文字及图片来源于网络加上自己的想法,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。

  • 相关阅读:
    NFC性价比高频读卡器首选方案:FM17550
    关于ESP8266和ESP8285的对比
    有没有比NRF51822更好的智能穿戴蓝牙方案
    zigbee CC2530首选方案模组:TZU06A1
    PAN3501兼容AS3933-BTST
    NRF51822和NRF52832的主要区别
    集成模拟温度传感器低成本2.4G CC2500RGPR 中文手册
    USB2.0主机控制器 UPD720114 简单详解
    存储器HK1225-7EQ 使用说明书资料
    爬虫 + 数据
  • 原文地址:https://www.cnblogs.com/chengxuyuanaa/p/12787332.html
Copyright © 2011-2022 走看看