2019新税率计算器

一、新税率的计算方式

# 2018年12月21日,发布《个人所得税扣缴申报管理办法(试行)》中规定,扣缴义务人向居民个人支付工资、薪金所得时,应当按照累计预扣法计算预扣税款,并按月办理扣缴申报。
# 累计预扣法,是指扣缴义务人在一个纳税年度内预扣预缴税款时,以纳税人在本单位截至当前月份工资、薪金所得累计收入减除累计免税收入、累计减除费用、累计专项扣除、累计专项附加扣除和累计依法确定的其他扣除后的余额为累计预扣预缴应纳税所得额。

# 本期税费 = (累计税前收入 - 累计五险一金 - 累计起征点 - 累计专项减免 - 累计其它减免) * 税率表 - 累计已交税费

# 假设一个人税前工资20000,五险一金3500,专项减免1000
# 一月份缴税,(20000 - 3500 - 5000 - 1000) * 0.03 = 315
# 二月份缴税,(20000*2 - 3500*2 - 5000*2 -1000*2) * 0.03 - 315 = 315

# 因此在工资不变的条件下,我们可以得到一条计算当前月份个人所得税的公式,公式如下:

# 公式: 每月个税 = (税前工资 - 五险一金 - 起征点 - 专项减免) * 月份 * 税率 - 之前月份的个税,

# 但是,此公式只适用于工资不变的情况下,因为如果工资是变化的,累计税前收入 != 税前工资*月份。

# 因此,如果在工资不变的情况下,知道五险一金、专项减免的金额,就可以计算出一年中每个月的税后工资、个税。

 

二、Python版本代码

def calculator(money, ins, special=0):
    """
    根据税前工资计算每个月的税后工资、个人所得税
    :param money: 税前工资
    :param ins: 五险一金
    :param special: 专项减免
    :return:
    """
    m, r = [0, 36000, 144000, 300000, 420000, 660000.960000], [0.03, 0.1, 0.2, 0.25, 0.3, 0.35, 0.45]
    s = '计算结果如下:\n'
    total_tax = 0
    for i in range(1, 13):
        month_tax = 0
        extra = (money - ins - special - 5000) * i
        if extra > 0:
            for j in range(1, len(m)):
                if extra > m[j]:
                    if j == len(m) - 1:
                        month_tax += (extra - m[j]) * r[j]
                    else:
                        month_tax += (m[j] - m[j - 1]) * r[j - 1]
                else:
                    month_tax += (extra - m[j - 1]) * r[j - 1]
                    break
            month_tax -= total_tax
            s += '{}月份工资,税后:{},所得税:{}\n'.format(i, money - ins - month_tax, month_tax)
            total_tax += month_tax
        else:
            s += '{}月份工资,税后:{},所得税:{}\n'.format(i, money - ins, 0)
    return s


if __name__ == '__main__':
    while True:
        money = int(input('税前工资:'))
        ins = int(input('五险一金:'))
        special = int(input('专项减免:'))
        print(calculator(money, ins, special))

 

三、配合前端显示

 

 

转载于:https://www.cnblogs.com/Coufusion/p/9667992.html

评论将由博主筛选后显示,对所有人可见 | 还能输入1000个字符
©️2020 CSDN 皮肤主题: 编程工作室 设计师: CSDN官方博客 返回首页
实付0元
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值