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进程通信之匿名管道实例讲解
Apr 11 Python
详解Python当中的字符串和编码
Apr 25 Python
用ReactJS和Python的Flask框架编写留言板的代码示例
Dec 19 Python
Python 如何访问外围作用域中的变量
Sep 11 Python
分享vim python缩进等一些配置
Jul 02 Python
Python异常处理知识点总结
Feb 18 Python
用Pelican搭建一个极简静态博客系统过程解析
Aug 22 Python
Python中 Global和Nonlocal的用法详解
Jan 20 Python
Python创建空列表的字典2种方法详解
Feb 13 Python
python多进程使用函数封装实例
May 02 Python
Django REST Framework 分页(Pagination)详解
Nov 30 Python
python 算法题——快乐数的多种解法
May 27 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
用文本文件制作留言板提示(上)
2006/10/09 PHP
php读取javascript设置的cookies的代码
2010/04/12 PHP
PHP 极验验证码实例讲解
2016/09/29 PHP
Thinkphp5 微信公众号token验证不成功的原因及解决方法
2017/11/12 PHP
javascript 写类方式之五
2009/07/05 Javascript
javascript 面向对象编程基础:继承
2009/08/21 Javascript
jquery-easyui关闭tab自动切换到前一个tab
2010/07/29 Javascript
实现变速回到顶部的JavaScript代码
2011/05/09 Javascript
JavaScript给每一个li节点绑定点击事件的实现方法
2016/12/01 Javascript
d3.js中冷门却实用的内置函数总结
2017/02/04 Javascript
nodejs读写json文件的简单方法(必看)
2017/03/09 NodeJs
详解基于Bootstrap+angular的一个豆瓣电影app
2017/06/26 Javascript
关于Google发布的JavaScript代码规范你要知道哪些
2018/04/04 Javascript
微信小程序form表单组件示例代码
2018/07/15 Javascript
Node.js 使用axios读写influxDB的方法示例
2018/10/26 Javascript
Node.js原生api搭建web服务器的方法步骤
2019/02/15 Javascript
javascript实现5秒倒计时并跳转功能
2019/06/20 Javascript
微信小程序接入腾讯云验证码的方法步骤
2020/01/07 Javascript
html2canvas属性和使用方法以及如何使用html2canvas将HTML内容写入Canvas生成图片
2020/01/12 Javascript
python3中获取文件当前绝对路径的两种方法
2018/04/26 Python
记录Python脚本的运行日志的方法
2019/06/05 Python
Python @property原理解析和用法实例
2020/02/11 Python
Python流程控制语句的深入讲解
2020/06/15 Python
python如何实现word批量转HTML
2020/09/30 Python
HTML5图片层叠的实现示例
2020/07/07 HTML / CSS
Skyscanner波兰:廉价航班
2017/11/07 全球购物
澳大利亚在线时尚精品店:Hello Molly
2018/02/26 全球购物
岗位说明书范文
2014/05/07 职场文书
学校欢迎标语
2014/06/18 职场文书
洗手间标语
2014/06/23 职场文书
关于九一八事变的演讲稿2014
2014/09/17 职场文书
开展党的群众路线教育实践活动总结报告
2014/10/31 职场文书
求职意向书范本
2015/05/11 职场文书
教师节作文之小学四年级
2019/09/03 职场文书
七年级作文之秋游
2019/10/21 职场文书
CSS3点击按钮圆形进度打钩效果的实现代码
2021/03/30 HTML / CSS