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

以下为python3适用版本

#!/usr/bin/python

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

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

# 提示用户输入工资

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

# 自定义一个异常

class MyException(Exception):

def __init__(self, *args):

self.args = args

try:

sal = int(sal)

if sal < 0:

raise MyException

except ValueError:

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

except MyException:

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

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(" 税前月收入: {}".format(sal))

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

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

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

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

以下为python2适用的版本

#!/usr/bin/python

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

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

# 提示用户输入工资

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

# 自定义一个异常

class MyException(Exception):

def __init__(self, *args):

self.args = args

try:

sal = int(sal)

if sal < 0:

raise MyException

except ValueError:

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

except MyException:

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

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(" 税前月收入: %d" % sal)

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

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

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

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

python输入税前工资打印税后工资-python-计算个人所得税相关推荐

  1. 用python计算工资工资_python税后工资计算器

    介绍 重新实现上一个挑战中的个税计算器,可以计算并处理多人的工资并打印税后工资. 项目需求改变: 输出税后工资 计算过程需要扣除社会保险费用 支持多人同时计算工资 打印税后工资列表 个税计算公式: 应 ...

  2. python输入时间_【转】python 输入一个时间,获取这个时间的下一秒

    输入一个时间,获取这个时间的下一秒 PS:下面代码使用于 python 2.7 time1 = raw_input("输入一个时间[HH:MM:SS]:") time1List = ...

  3. python假设税前工资和税率如下_Python - 计算个人所得税

    十一有个好消息,就是个税有调整,写了个计算个人所得税的脚本,看看你省了多少 以下为python3适用版本 #!/usr/bin/python # -*- coding: UTF-8 -*- # 该py ...

  4. 用python输入名字并打印_python的输出与输入

    输出 用 print() 在括号中加上字符串,就可以向屏幕上输出指定的文字.比如输出 'hello, world' ,用代码实现如下: >>> print('hello, world ...

  5. python输入数字翻译成星期几-Python练习笔记——计算输入日期为改年的第几天、星期几...

    # 输入年月日,如:1995年12月10日,计算是该年的第几天? # 同时计算出当天是星期几? print("请依据提示依次输入您想查询的年 月 日") # 第一段代码块(年月日输 ...

  6. python输入end退出循环_4.学习python获取用户输入和while循环及if判断语句

    0x00 Abstract 在开发中为了增加程序与用户的互动性需要增加获取用户输入的功能,在python中可以使用input()函数来获取用户的输入.当获取用户的各种输入后,我们需要使用逻辑语句来对数 ...

  7. python 输入正方形_Python打印正方形

    示例1:#!/usr/bin/python # -*- coding: UTF-8 -*- # 根据输入打印 rows = int(raw_input('please input number:')) ...

  8. python输入的n打印n行杨辉三角_新手求教:请问怎样用python 显示杨辉三角,任意输入一个数N,输出一个N+1层的杨辉三角。...

    展开全部 我来试一下:32313133353236313431303231363533e78988e69d8331333337383338#!/usr/bin/python # coding:utf- ...

  9. Python输入一个奇数打印出菱形

    请输入打印行数(必须是奇数):5   *  *** *****  ***   * #coding=utf-8 s = int(input('请输入打印行数(必须是奇数):'))#打印的行数 x = 1 ...

  10. python输入一组身高_一起学Python系列之用户输入

    函数input(): 函数input() 让程序暂停运行, 等待用户输入一些文本. 获取用户输入后, Python将其存储在一个变量中, 以方便你使用. message=input("tel ...

最新文章

  1. 苹果公司投资1000万美元用于无温室气体铝冶炼
  2. hdu 3721 树的最小直径
  3. 可视化大屏设计尺寸_可视化大屏设计_酷炫不是最高效的大屏展示的唯一标准...
  4. RT-Thread I/O设备模型
  5. Python-多线程编程
  6. rm -rf误删文件的恢复(extundelete工具的使用)
  7. JavaScript动态显示当前时间和倒计时的设计(附全码)_AX
  8. h5扫描pc端二维码登录
  9. DHCP自动分配IP地址
  10. 【java批量图片压缩处理】
  11. Android(五十七):WebView - 获取网页logo和标题、监听页面滚动、刷新页面、两端交互
  12. 两年数据对比柱形图_你与专业堆积柱形图的距离,只差一个数据标签
  13. 为什么我总抢注不到域名?
  14. 什么是网站跳出率?一招教你如何处理高跳出率?
  15. python改变背景颜色_Python实现转换图片背景颜色代码
  16. 我是怎么从一家小公司通过社招去了阿里?
  17. 创新认知 基于LPC1114单片机的传感器使用
  18. 迅雷下载边下边播设置为本地安装的浏览器
  19. 分享43个职场必备excel函数!(内含详细案例解析及教程参考)
  20. php发送短信(调用网易云信实现)

热门文章

  1. 带后台管理的超酷jquery+ajax幻灯相册php源码,六屏仿手风琴效果的js焦点幻灯片代码_js特效_js幻灯片是什么...
  2. css中“~”(波浪号)、“,”(逗号)、“+”(加号)和“”(大于号)详解
  3. java base64 加号_Base64 空格,加号问题
  4. 云计算与大数据概论第十一周(2)
  5. HTB_Secret
  6. nfc卡模式与标准模式_解析目前NFC具有的三种工作模式
  7. 这12首极短的诗歌,有极大的魅力
  8. WEB 安全之 SQL注入一 盲注
  9. 学好线性代数,我推荐这本书
  10. 大一计算机课如何做表格,电脑做表格的基本操作教程