美文网首页Python新世界python热爱者
个税起征点上调至5000,用Python算一算少交多少税

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

作者: 48e0a32026ae | 来源:发表于2018-11-02 16:28 被阅读2次

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

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

    晚上加一个鸡腿,要不要~如果你感觉学不会?莫慌,小编推荐大家加入群,

    前面516中间107后面834,群里有志同道合的小伙伴,

    互帮互助,还可以拿到许多视频教程!

    开心归开心,我们来用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: {} ".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元。

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

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

    相关文章

      网友评论

        本文标题:个税起征点上调至5000,用Python算一算少交多少税

        本文链接:https://www.haomeiwen.com/subject/rvecxqtx.html