最近在学python,写了个计算个人所得税计算的脚本,分享。

以下为python3适用版本

#!/usr/bin/python

# -*- coding: UTF-8 -*-

# 该python脚本用于计算税后工资

# 提示用户输入工资

sal = input("Please input your salary: \n")

# 自定义一个异常

class MyException(Exception):

def __init__(self, *args):

self.args = args

try:

sal = int(sal)

if sal < 0:

raise MyException

except ValueError:

print("给劳资输一个整数,别带字母和小数!\n")

except MyException:

print("你大爷的,工资是负数?\n")

else:

# 计算社保和公积金以及扣除该部分之后的工资

shebao = round(sal * 0.105, 2)

gongjijin = round(sal * 0.07, 2)

aft_sal = sal - shebao - gongjijin

# 税率(这个没变)

sui_lv = [0.45, 0.35, 0.3, 0.25, 0.2, 0.1, 0.03]

# 税改前超出起征点各阶段工资

jin_e1 = [80000, 55000, 35000, 9000, 4500, 1500, 0]

# 税改后超出起征点各阶段工资

jin_e2 = [80000, 55000, 35000, 25000, 12000, 3000, 0]

# 起征点(调整前3500,调整后5000)

qizheng1 = 3500

qizheng2 = 5000

# 应缴税工资:税前工资-社保-公积金-起征点

yinjiao1 = aft_sal - qizheng1

yinjiao2 = aft_sal - qizheng2

# 定义计算所得税函数

# a应缴税工资,b超出起征点各阶段工资,c税率

def jisuan(a, b, c):

sum = 0

for i in range(0, len(b)):

if a > b[i]:

sum += (a - b[i]) * c[i]

a = b[i]

return round(sum, 2)

# 计算所得税

suodesui1 = jisuan(yinjiao1, jin_e1, sui_lv)

suodesui2 = jisuan(yinjiao2, jin_e2, sui_lv)

print("\n税前月收入: {}".format(sal))

print("五险一金: {}".format(shebao + gongjijin))

print("旧税率应纳税: {} 元,税后收入: {} 元".format(suodesui1, round(aft_sal-suodesui1, 2)))

print("新税率应纳税: {} 元,税后收入: {} 元\n".format(suodesui2, round(aft_sal-suodesui2, 2)))

--------------------------------------------------------分割线------------------------------------------------------------------------------------

以下为python2适用的版本

#!/usr/bin/python

# -*- coding: UTF-8 -*-

# 该python脚本用于计算税后工资

# 提示用户输入工资

sal = raw_input("Please input your salary: \n")

# 自定义一个异常

class MyException(Exception):

def __init__(self, *args):

self.args = args

try:

sal = int(sal)

if sal < 0:

raise MyException

except ValueError:

print("给劳资输一个整数,别带字母和小数!\n")

except MyException:

print("你大爷的,工资是负数?\n")

else:

# 计算社保和公积金以及扣除该部分之后的工资

shebao = round(sal * 0.105, 2)

gongjijin = round(sal * 0.07, 2)

aft_sal = sal - shebao - gongjijin

# 税率(这个没变)

sui_lv = [0.45, 0.35, 0.3, 0.25, 0.2, 0.1, 0.03]

# 税改前超出起征点各阶段工资

jin_e1 = [80000, 55000, 35000, 9000, 4500, 1500, 0]

# 税改后超出起征点各阶段工资

jin_e2 = [80000, 55000, 35000, 25000, 12000, 3000, 0]

# 起征点(调整前3500,调整后5000)

qizheng1 = 3500

qizheng2 = 5000

# 应缴税工资:税前工资-社保-公积金-起征点

yinjiao1 = aft_sal - qizheng1

yinjiao2 = aft_sal - qizheng2

# 定义计算所得税函数

# a应缴税工资,b超出起征点各阶段工资,c税率

def jisuan(a, b, c):

sum = 0

for i in range(0, len(b)):

if a > b[i]:

sum += (a - b[i]) * c[i]

a = b[i]

return round(sum, 2)

# 计算所得税

suodesui1 = jisuan(yinjiao1, jin_e1, sui_lv)

suodesui2 = jisuan(yinjiao2, jin_e2, sui_lv)

print("\n税前月收入: %d" % sal)

print("五险一金: %.2f" % (shebao + gongjijin))

print("旧税率应纳税: %.2f 元,税后收入: %.2f 元" % (suodesui1, (aft_sal-suodesui1)))

print("新税率应纳税: %.2f 元,税后收入: %.2f 元\n" % (suodesui2, (aft_sal-suodesui2)))

原文地址:https://www.cnblogs.com/ddzj01/p/9756101.html

python输入个人所得税计算_python-计算个人所得税相关推荐

  1. python怎么算阶乘_python计算阶乘

    广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 问题本身很简单,主要是通过这个小问题来演示python的一些用法,例如测试代码运 ...

  2. python中e怎么计算_python计算e

    广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 开发准备下载和安装 python sdk . 首次使用批量计算,参考 开始前的准 ...

  3. Python 输入圆半径,计算圆周长和面积

    用 Python 编写程序:输入圆半径,计算圆周长和面积 """ 功能: 输入圆半径,计算圆周长和面积 作者: Fulling 时间: 2021年10月15日 " ...

  4. python怎么算积分_python计算积分

    python有多个方法计算积分,下面介绍其中三个,以下式为例: 方法一:直接用numpy计算 start = 1 stop = 2 length = 101 x = np.linspace(start ...

  5. python输入数字排序_Python 对输入的数字进行排序的方法

    Python 对输入的数字进行排序的方法 要求,输入一串数字,并以列表的形式打印出来. number = input('请输入一串数字:') print(number) print(type(numb ...

  6. python输入input数组_python怎么输入数组

    python怎么输入数组? python输入数组 一维数组:arr = input("") //输入一个一维数组,每个数之间使空格隔开 num = [int(n) for n in ...

  7. python 输入一个数组_python怎么输入数组

    python怎么输入数组? python输入数组 一维数组:arr = input("") //输入一个一维数组,每个数之间使空格隔开 num = [int(n) for n in ...

  8. python输入半径计算公式_Python:09设计Circle类包括圆心半径、颜色属性,编写类方法计算周长与面积(2种方法)...

    设计一个Circle类,包括圆心位置.半径.颜色属性.编写构造方法进行属性初始化,编写类方法计算周长与面积. 方法一 class Circle: location=(0,0) r=0 color=&q ...

  9. python输入出生日期和当前日期计算年龄_python根据出生日期计算年龄的代码

    python根据出生日期计算年龄的代码,运行后会提醒用户输出出生的年月日,然后输出年龄,可以改写为一个通用函数 from time import * #a function to find your ...

  10. python求阶乘之和_python计算阶乘前n项和

    广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 知道公式后就很简单了,利用for循环,第几行i+1就等于几,当然python中是 ...

最新文章

  1. 微信小程序之下拉加载和上拉刷新
  2. LiveVideoStack线上分享第三季(十三):腾讯云LiteAVSDK演进之路
  3. SQL实战篇:SQL基础及执行顺序
  4. 什么是 CMS - Content Management System
  5. shark恒破解笔记3-EAX决定胜负
  6. 计算机电源大小,常见电脑主板和电源尺寸
  7. Chrome最新版如何安装代理Proxy SwitchyOmega
  8. openCV实践项目:图片文本检测
  9. mac注销快捷键_Mac小技巧 - 快捷键符号解释及用法介绍
  10. 聚类算法效果衡量标准
  11. android怎么监听多点触摸_Android笔记:触摸事件的分析与总结----多点触控
  12. 网络流24题 最小路径覆盖(DCOJ8002)
  13. 企业微信收款后可以进行退款吗?如何操作?
  14. 【韧性架构】韧性性工程的重要性
  15. java容器~面试知识点整理
  16. 物联网专业可以插本计算机技术吗,物联网工程专业专接本考什么
  17. 阿里云轻量应用服务器开启minecraft基岩版服务器(bedrock)
  18. echarts 玫瑰图比例太小显示优化
  19. CSS 入门2(样式属性+元素溢出+显示特性+盒子模型)
  20. 如何用纯 CSS 创作一盘传统蚊香 1

热门文章

  1. redis缓存服务器
  2. 电脑蓝色,我的电脑蓝色是怎么回事
  3. 百度世界大会全新打开方式!VR会场“希壤”上线
  4. CorelDRAW2021标准版 序列号授权码
  5. 计算机安全模式怎么消除计,win10如何解除安全模式,教您如何解除电脑安全模式...
  6. exe文件修复,关于logo1_exe“威金”变种病毒的探讨
  7. 痞子衡嵌入式:语音处理工具Jays-PySPEECH诞生记(5)- 语音识别实现(SpeechRecognition, PocketSphinx0.1.15)
  8. ABC类IP地址划分_wuli大世界_新浪博客
  9. facebook登陆授权 服务器接入记录
  10. errMsg: “checkJsApi:ok“