благодарный
Станция Б - это действительно место для обучения.Посмотрев видео учителя, я наконец-то понял, как рассчитать налог.Ссылка на ссылку, и друзья, которые не понимают так же, как я, могут идти и учиться.Я боишься, что бухгалтер сделает тебе ошибку. .
Расчет налога на бонусы в конце года
def nzjgs(n):
"""
:type n: float 年终奖总额
:rtype: float 年终奖交税额
"""
tmp = n/12
if tmp <= 3000:
return n * 0.03
if 3000 < tmp <= 12000:
return n * 0.1 - 210
if 12000 < tmp <= 25000:
return n * 0.2 - 1410
if 25000 < tmp <= 35000:
return n * 0.25 - 2660
if 35000 < tmp <= 55000:
return n * 0.3 - 4410
if 55000 < tmp <= 80000:
return n * 0.35 - 7160
return n * 0.45 - 15160
Например, если моя премия по итогам года 40 000 (на всякий случай), то 3790,0, полученные после вызова функции расчета, и есть налоговый платеж.
print(nzjgs(40000))
3790.0
ежемесячный расчет налога на заработную плату
def yxgs(n, s, shebao, qitakouchu, zhuanxiangfujiakouchu):
"""
:type n: float 月份
:type s: float 月薪
:type shebao: float 每月社保缴费
:type qitakouchu: float 每月其他扣除费用
:type zhuanxiangfujiakouchu: float 每月专项附加扣除
:rtype: tuple (截止到本月之前的每月交税列表,本月交税额, 截止到本月的交税总额)
"""
koushui = []
for i in range(1, n+1):
total_s = s * i
total_shebao = shebao * i
total_zhuanxiangkouchu = qitakouchu * i
total_5000 = 5000 * i
total_zhuanxiangfujiakouchu = zhuanxiangfujiakouchu * i
total_suodee = total_s - total_shebao - total_zhuanxiangkouchu - total_5000 - total_zhuanxiangfujiakouchu
if total_suodee <= 36000:
koushui.append(total_suodee * 0.03 - sum(koushui))
if 36000 < total_suodee <= 144000:
koushui.append(total_suodee * 0.1 - 2520 - sum(koushui))
if 144000<total_suodee<=300000:
koushui.append(total_suodee * 0.2 - 16920 - sum(koushui))
if 300000<total_suodee<=420000:
koushui.append(total_suodee * 0.25 - 31920 - sum(koushui))
if 420000<total_suodee<=660000:
koushui.append(total_suodee * 0.3 - 52920 - sum(koushui))
if 660000<total_suodee<=960000:
koushui.append(total_suodee * 0.35 - 85920 - sum(koushui))
if 960000<total_suodee:
koushui.append(total_suodee * 0.45 - 181920 - sum(koushui))
return koushui, koushui[-1], sum(koushui)
Если моя месячная зарплата 20 000, соцстрах 2025 каждый месяц, специальный дополнительный вычет 0, а остальные вычеты 300, то мой налоговый платеж в 12-м месяце 2077,5:
print(yxgs(12, 20000, 2025, 300, 0))
([380.25, 380.25, 522.0, 1267.5, 1267.5, 1267.5, 1267.5, 1267.5, 1267.5, 1267.5, 1267.5, 2077.5], 2077.5, 13500.0)
сумма
Если вышеуказанные две части составляют мой годовой доход, после расчета двух вышеуказанных частей по отдельности общая сумма налога, уплаченного в этом году, составит 17290,0. налоговый платеж 5867,5.
Расчет налога на бонусы в конце 2022 года
Если у меня все еще есть месячная зарплата в размере 20 000 юаней, а другие отчисления остаются неизменными, первые 11 месяцев остаются такими же, как и раньше, но с 2022 года заработная плата и премия на конец года будут объединены для расчета налога, поэтому налог за 12-й месяц должен включать обычную месячную заработную плату и премию в конце года. Эта функция должна применять предыдущую функцию.
def xbnzjgs(nzj, n, shebao, qitakouchu, zhuanxiangfujiakouchu):
"""
:type nzj: float 年终奖
:type n: float 月薪
:type shebao: float 每月社保缴费
:type qitakouchu: float 每月其他扣除费用
:type zhuanxiangfujiakouchu: float 每月专项附加扣除
:rtype: 第 12 个月的交税额
"""
p = yxgs(11, n, shebao, qitakouchu, zhuanxiangfujiakouchu)
total_suodee = nzj + n * 12 - (shebao + qitakouchu + zhuanxiangfujiakouchu + 5000) * 12
if total_suodee <= 36000:
return total_suodee * 0.03 - p[2]
if 36000 < total_suodee <= 144000:
return total_suodee * 0.1 - 2520 - p[2]
if 144000<total_suodee<=300000:
return total_suodee * 0.2 - 16920 - p[2]
if 300000<total_suodee<=420000:
return total_suodee * 0.25 - 31920 - p[2]
if 420000<total_suodee<=660000:
return total_suodee * 0.3 - 52920 - p[2]
if 660000<total_suodee<=960000:
return total_suodee * 0.35 - 85920 - p[2]
if 960000<total_suodee:
return total_suodee * 0.45 - 181920 - p[2]
Например, если моя обычная месячная зарплата составляет 20 000 юаней, если премия по итогам года составляет 40 000 юаней, а остальные остаются неизменными, то налоговый платеж в 12-м месяце составляет 10077,5:
print(xbnzjgs(40000, 20000, 2025, 300, 0))
10077.5
Видно, что общий налоговый платеж на 4210 больше, чем в предыдущем 12-м месяце.Этот налоговый вычет действительно слишком суров.Что я могу сказать, может быть, лук-порей среднего класса в обществе вырос выше и должен быть резать.
конечная нота
- Написание этих функций чисто для развлечения, реализация вышеперечисленных функций относительно грубая, пожалуйста, простите меня.
- Первые две функции верны.Метод расчета итогового бонуса на конец 2022 года – это алгоритм, который я выдвинул сам, который может быть неправильным.Пожалуйста, поправьте меня.