Python中的整除和取模实例


Posted in Python onJune 03, 2020

一 除法

1 正数除法

Python3中的除法中,除法/总是返回一个浮点数,如下:

>>> 6/4
1.5
>>> 2/3
0.6666666666666666

如果只想得到整数的结果,丢弃分数部分,可以使用运算符 //:

>>> 6//4
1
>>> 2//3
0

// 得到的是整除的结果,但是结果并不一定是整数类型的数,它与分母分子的数据类型有关系:

>>> 6//4.0
1.0
>>> 2.0//3
0.0

2 负数除法

Python3除法采取的是向下取整,即向负无穷方向取最接近精确值的整数。故当整除运算有负数时,结果稍有不同:

>>> 4//-3
-2
>>> -10//3
-4

我们通常的计算中,采用的是向零取整的方法计算,4//-3 = -1,-10//3 = -3。如果希望在Python3中对负数采用向零取整的方法计算,可以如下处理:

>>> int(4/-3)
-1
>>> int(-10/3)
-3

二 取模

Python3 中采用%表示取模运算,结果返回除法的余数:

>>> 21%10
1
>>> 3%4
3

但是由于Python采用的是向下取整的方式,所以对负数的取余结果不一样:

>>> -21%10
9
>>> -5%4
3

结合前面负数的整除计算,可以理解取模的结果。-21//10 = -3, -21-(-3)*10 = 9

补充知识:Python中列表索引为的负数时,意义与R不同

之前学的是R, 后来看Python访问索引为负数索引时,感觉不对,后来了解到,原来二者意义是完全不同的。

比如有一个列表,list1 = [a, b ,c ,d ,e]

- 对R来说,负数索引表示在原有的列表中去除该索引对应的元素,如list[-1]就是在原有的列表中去除第1个元素,所以结果是 list1[-1] = [b, c, d, e](R中列表元素序号从1开始)

> list1 <- c("a", "b", "c", "d", "e")
> list1[-1]
[1] "b" "c" "d" "e"

- 对Python来说,负数索引表示从右边往左数,最右边的元素的索引为-1,倒数第二个元素为-2.,。。。list[-1] = e

In [1] list = ["a", "b", "c", "d", "e"]
     print(list[-1])
     e

以上这篇Python中的整除和取模实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python import自定义模块方法
Feb 12 Python
Python实现的彩票机选器实例
Jun 17 Python
Python脚本实现虾米网签到功能
Apr 12 Python
python实现二维码扫码自动登录淘宝
Dec 27 Python
Scrapy-redis爬虫分布式爬取的分析和实现
Feb 07 Python
Python Tkinter实现简易计算器功能
Jan 30 Python
python实现Windows电脑定时关机
Jun 20 Python
CentOS6.9 Python环境配置(python2.7、pip、virtualenv)
May 06 Python
tensorflow指定GPU与动态分配GPU memory设置
Feb 03 Python
Pytorch中.new()的作用详解
Feb 18 Python
Python GUI编程学习笔记之tkinter控件的介绍及基本使用方法详解
Mar 30 Python
TensorFlow2.1.0安装过程中setuptools、wrapt等相关错误指南
Apr 08 Python
python 负数取模运算实例
Jun 03 #Python
Python小白学习爬虫常用请求报头
Jun 03 #Python
Python新手学习函数默认参数设置
Jun 03 #Python
python seaborn heatmap可视化相关性矩阵实例
Jun 03 #Python
Python新手学习raise用法
Jun 03 #Python
Django实现任意文件上传(最简单的方法)
Jun 03 #Python
Python flask框架如何显示图像到web页面
Jun 03 #Python
You might like
windows下升级PHP到5.3.3的过程及注意事项
2010/10/12 PHP
使用Curl进行抓取远程内容时url中文编码问题示例探讨
2013/10/29 PHP
Javascript 检测、添加、移除样式(className)函数代码
2009/09/08 Javascript
IE bug table元素的innerHTML
2010/01/11 Javascript
IE与FireFox中的childNodes区别
2011/10/20 Javascript
基于jquery实现状态限定编辑的代码
2012/02/11 Javascript
javascript中window.event事件用法详解
2012/12/11 Javascript
jQuery中append()方法用法实例
2014/12/25 Javascript
基于javascript实现的搜索时自动提示功能
2014/12/26 Javascript
原生javascript实现简单的datagrid数据表格
2015/01/02 Javascript
JS判断字符串包含的方法
2015/05/05 Javascript
JQuery中Text方法用法实例分析
2015/05/18 Javascript
javascript学习总结之js使用技巧
2015/09/02 Javascript
jQuery实现的简单提示信息插件
2015/12/08 Javascript
Summernote实现图片上传功能的简单方法
2016/07/11 Javascript
Jquery删除css属性的简单方法
2016/12/04 Javascript
深入理解Commonjs规范及Node模块实现
2017/05/17 Javascript
利用Javascript开发一个二维周视图日历
2017/12/14 Javascript
详解如何在项目中使用jest测试react native组件
2018/02/09 Javascript
在Create React App中使用CSS Modules的方法示例
2019/01/15 Javascript
解决vue跨域axios异步通信问题
2019/04/17 Javascript
js通过循环多张图片实现动画效果
2019/12/19 Javascript
Python判断文件和字符串编码类型的实例
2017/12/21 Python
初探TensorFLow从文件读取图片的四种方式
2018/02/06 Python
详解PyTorch批训练及优化器比较
2018/04/28 Python
selenium+python自动化测试之鼠标和键盘事件
2019/01/23 Python
python3 字符串/列表/元组(str/list/tuple)相互转换方法及join()函数的使用
2019/04/03 Python
TensorFlow加载模型时出错的解决方式
2020/02/06 Python
纯HTML5+CSS3制作生日蛋糕(代码易懂)
2016/11/16 HTML / CSS
html5中使用hotcss.js实现手机端自适配的方法
2020/04/23 HTML / CSS
美国顶级防滑鞋:Shoes For Crews
2017/03/27 全球购物
产品质量承诺范本
2014/03/31 职场文书
合伙协议书范本
2014/04/21 职场文书
入党积极分子培养联系人意见
2015/08/12 职场文书
OpenCV-Python模板匹配人眼的实例
2021/06/08 Python
MySQL中LAG()函数和LEAD()函数的使用
2022/08/14 MySQL