[python 练习] 计算个税
题目:利用python计算个税
说明:python有序字典的使用
代码:
- # -*- coding: utf-8 -*-
- from collections import OrderedDict
- # 税率表, 2018.10新个税
- tax_ratio = OrderedDict()
- tax_ratio[(0, 5000)] = 0
- tax_ratio[(5000, 3000)] = 0.03
- tax_ratio[(3000, 12000)] = 0.1
- tax_ratio[(12000, 25000)] = 0.2
- tax_ratio[(25000, 35000)] = 0.25
- tax_ratio[(35000, 55000)] = 0.3
- tax_ratio[(55000, 80000)] = 0.35
- tax_ratio[(80000, float('inf'))] = 0.45
- # 计算税
- def tax(income, social_benefits=0):
- income -= social_benefits
- total_tax = 0
- for k, v in tax_ratio.items():
- if income > k[1]:
- income -= k[1]
- total_tax += k[1] * v
- elif k[0] < income < k[1]:
- total_tax += income * v
- break
- return total_tax
- if __name__ == '__main__':
- print(tax(12705))
- print(tax(15000, 2295))
- print(tax(income=15000, social_benefits=2295))
- print(tax(social_benefits=2295, income=15000))
[python 练习] 计算个税的更多相关文章
- windows下安装python科学计算环境,numpy scipy scikit ,matplotlib等
安装matplotlib: pip install matplotlib 背景: 目的:要用Python下的DBSCAN聚类算法. scikit-learn 是一个基于SciPy和Numpy的开源机器 ...
- Python TF-IDF计算100份文档关键词权重
上一篇博文中,我们使用结巴分词对文档进行分词处理,但分词所得结果并不是每个词语都是有意义的(即该词对文档的内容贡献少),那么如何来判断词语对文档的重要度呢,这里介绍一种方法:TF-IDF. 一,TF- ...
- Python科学计算(二)windows下开发环境搭建(当用pip安装出现Unable to find vcvarsall.bat)
用于科学计算Python语言真的是amazing! 方法一:直接安装集成好的软件 刚开始使用numpy.scipy这些模块的时候,图个方便直接使用了一个叫做Enthought的软件.Enthought ...
- 目前比较流行的Python科学计算发行版
经常有身边的学友问到用什么Python发行版比较好? 其实目前比较流行的Python科学计算发行版,主要有这么几个: Python(x,y) GUI基于PyQt,曾经是功能最全也是最强大的,而且是Wi ...
- Python科学计算之Pandas
Reference: http://mp.weixin.qq.com/s?src=3×tamp=1474979163&ver=1&signature=wnZn1UtW ...
- Python 科学计算-介绍
Python 科学计算 作者 J.R. Johansson (robert@riken.jp) http://dml.riken.jp/~rob/ 最新版本的 IPython notebook 课程文 ...
- Python科学计算库
Python科学计算库 一.numpy库和matplotlib库的学习 (1)numpy库介绍:科学计算包,支持N维数组运算.处理大型矩阵.成熟的广播函数库.矢量运算.线性代数.傅里叶变换.随机数生成 ...
- Python科学计算基础包-Numpy
一.Numpy概念 Numpy(Numerical Python的简称)是Python科学计算的基础包.它提供了以下功能: 快速高效的多维数组对象ndarray. 用于对数组执行元素级计算以及直接对数 ...
- Python科学计算PDF
Python科学计算(高清版)PDF 百度网盘 链接:https://pan.baidu.com/s/1VYs9BamMhCnu4rfN6TG5bg 提取码:2zzk 复制这段内容后打开百度网盘手机A ...
随机推荐
- 拷贝JAR包
package com.cici; import java.io.File; import java.io.FileInputStream; import java.util.ArrayList; i ...
- zepto中的scrollTo
//zepto没有scrollTo动画,这里扩展了一个scrollTo函数 $.fn.scrollTo = function(options) { var defaults = { scrollTop ...
- python性能:不要使用 key in list 判断key是否在list里
原文:https://docs.quantifiedcode.com/python-anti-patterns/performance/using_key_in_list_to_check_if_ke ...
- dbconfig.properties
jdbc.driver=com.mysql.jdbc.Driver jdbc.url=jdbc:mysql://localhost:3306/数据库名 jdbc.username=root jdbc. ...
- Json.NET Performance Tips
原文: http://www.newtonsoft.com/json/help/html/Performance.htm To keep an application consistently fas ...
- redis安装(单节点)
# tar -zxvf redis.tar.gz # cd redis 安装(使用 PREFIX 指定安装目录): # make PREFIX=/usr/local/redis install 安装完 ...
- ng7 设置文件路径别名
/tsconfig.json 配置后重启服务 { "compileOnSave": false, "compilerOptions": { "base ...
- Junit/idea Junit支持/Spring test之间的孽世纠葛
最近应老板要求,研究研究Spring测试相关的东西,力求搞一个方便使用的测试工具,对于一个Spring不熟Junit不懂的人这是一个很大的坑,扫了一边spring test文档没感觉有什么收获,spr ...
- 使用DevExpress.XtraTabbedMdi.XtraTabbedMdiManager控件来加载MDI窗体
使用DevExpress.XtraTabbedMdi.XtraTabbedMdiManager控件来加载MDI窗体 [csharp] view plaincopyprint? <SPAN ...
- XenServer多网卡绑定
xenserver通过 XenCenter可以绑定网卡,支持Active-Active和Active-Standby的模式,但是通过Xencenter只能绑定两块网卡为一组.更多的比如3块一组.4块一 ...