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编写简单的微博爬虫
Mar 04 Python
详解Python核心对象类型字符串
Feb 11 Python
Python基于mysql实现学生管理系统
Feb 21 Python
docker django无法访问redis容器的解决方法
Aug 21 Python
python mqtt 客户端的实现代码实例
Sep 25 Python
python中从for循环延申到推导式的具体使用
Nov 29 Python
python实现简单的购物程序代码实例
Mar 03 Python
如何理解python中数字列表
May 29 Python
公认8个效率最高的爬虫框架
Jul 28 Python
如何以Winsows Service方式运行JupyterLab
Aug 30 Python
Python环境使用OpenCV检测人脸实现教程
Oct 19 Python
能让Python提速超40倍的神器Cython详解
Jun 24 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
PHP采集类Snoopy抓取图片实例
2014/06/19 PHP
浅谈PHP中JSON数据操作
2015/07/01 PHP
深入理解PHP内核(二)之SAPI探究
2015/11/10 PHP
PHP安全下载文件的方法
2016/04/07 PHP
PHP 的Opcache加速的使用方法
2017/12/29 PHP
PHP+Ajax实现的博客文章添加类别功能示例
2018/03/29 PHP
laravel5.2表单验证,并显示错误信息的实例
2019/09/29 PHP
设定php简写功能的方法
2019/11/28 PHP
JS 屏蔽按键效果与改变按键效果的示例代码
2013/12/24 Javascript
php和js对数据库图片进行等比缩放示例
2014/04/28 Javascript
jquery获取tagName再进行判断
2014/05/29 Javascript
JavaScript函数使用的基本教程
2015/06/04 Javascript
微信小程序 navbar实例详解
2017/05/11 Javascript
实时监控input框,实现输入框与下拉框联动的实例
2018/01/23 Javascript
浅析node.js的模块加载机制
2018/05/25 Javascript
详解Vue取消eslint语法限制
2018/08/04 Javascript
js实现动态增加文件域表单功能
2018/10/22 Javascript
小程序自定义日历效果
2018/12/29 Javascript
详解Jest结合Vue-test-utils使用的初步实践
2019/06/27 Javascript
浅谈vue中使用编辑器vue-quill-editor踩过的坑
2020/08/03 Javascript
[02:20]DOTA2亚洲邀请赛 IG战队出场宣传片
2015/02/07 DOTA
linux下python抓屏实现方法
2015/05/22 Python
Python 装饰器原理、定义与用法详解
2019/12/07 Python
Python爬虫JSON及JSONPath运行原理详解
2020/06/04 Python
Python实现Keras搭建神经网络训练分类模型教程
2020/06/12 Python
Python 数据分析之逐块读取文本的实现
2020/12/14 Python
CSS3实现翘边的阴影效果的代码示例
2016/06/13 HTML / CSS
html5唤醒APP小记
2019/03/27 HTML / CSS
德国领先的大尺码和超大尺码男装在线零售商:Bigtex
2019/06/22 全球购物
动物科学专业毕业生的自我评价
2013/11/29 职场文书
毕业生护理专业个人求职信范文
2014/01/04 职场文书
电影雷锋观后感
2015/06/10 职场文书
圣诞晚会主持词
2015/07/01 职场文书
信息技术课教学反思
2016/02/23 职场文书
2016小学优秀教师先进事迹材料
2016/02/26 职场文书
CSS的class与id常用的命名规则
2021/05/18 HTML / CSS