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代码制作configure文件示例
Jul 28 Python
python中二维阵列的变换实例
Oct 09 Python
Python读取sqlite数据库文件的方法分析
Aug 07 Python
Python网络编程 Python套接字编程
Sep 13 Python
对pandas replace函数的使用方法小结
May 18 Python
通过Py2exe将自己的python程序打包成.exe/.app的方法
May 26 Python
对python字典元素的添加与修改方法详解
Jul 06 Python
如何用Python做一个微信机器人自动拉群
Jul 03 Python
浅谈Python2之汉字编码为unicode的问题(即类似\xc3\xa4)
Aug 12 Python
Python values()与itervalues()的用法详解
Nov 27 Python
python中字典增加和删除使用方法
Sep 30 Python
Python模拟键盘输入自动登录TGP
Nov 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
php 使用array函数实现分页
2015/02/13 PHP
尽可能写&quot;友好&quot;的&quot;Javascript&quot;代码
2007/01/09 Javascript
浅谈javascript 面向对象编程
2009/10/28 Javascript
解析John Resig Simple JavaScript Inheritance代码
2012/12/03 Javascript
JavaScript 和 Java 的区别浅析
2013/07/31 Javascript
jquery分析文本里url或邮件地址为真实链接的方法
2015/06/20 Javascript
全面解析Bootstrap手风琴效果
2020/04/17 Javascript
jQuery弹出遮罩层效果完整示例
2016/09/13 Javascript
js 发布订阅模式的实例讲解
2017/09/10 Javascript
微信小程序实现bindtap等事件传参
2019/04/08 Javascript
Vue基于vuex、axios拦截器实现loading效果及axios的安装配置
2019/04/26 Javascript
JavaScript中的ES6 Proxy的具体使用
2019/06/16 Javascript
利用node.js开发cli的完整步骤
2020/12/29 Javascript
[02:27]DOTA2英雄基础教程 莱恩
2014/01/17 DOTA
python django集成cas验证系统
2014/07/14 Python
Python环境下搭建属于自己的pip源的教程
2016/05/05 Python
Python3中使用urllib的方法详解(header,代理,超时,认证,异常处理)
2016/09/21 Python
Django卸载之后重新安装的方法
2017/03/15 Python
Python包,__init__.py功能与用法分析
2020/01/07 Python
Django启动时找不到mysqlclient问题解决方案
2020/11/11 Python
公共汽车、火车和飞机票的通用在线预订和销售平台:INFOBUS
2019/11/30 全球购物
澳大利亚领先的男装零售连锁店:Lowes
2020/08/07 全球购物
校园报刊亭创业计划书
2014/01/02 职场文书
医学专业职业生涯规划范文
2014/02/05 职场文书
贺卡寄语大全
2014/04/11 职场文书
迎新晚会策划方案
2014/06/13 职场文书
群众路线领导干部个人对照检查材料(集锦)
2014/09/23 职场文书
六查六看自检自查剖析材料
2014/10/14 职场文书
2014年高中班主任工作总结
2014/11/08 职场文书
呼啸山庄读书笔记
2015/06/29 职场文书
2016七一建党节慰问信
2015/11/30 职场文书
2016年第十九届推普周活动总结
2016/04/06 职场文书
position:sticky 粘性定位的几种巧妙应用详解
2021/04/24 HTML / CSS
React + Threejs + Swiper 实现全景图效果的完整代码
2021/06/28 Javascript
HttpClient实现文件上传功能
2022/08/14 Java/Android
CSS中calc(100%-100px)不加空格不生效
2023/05/07 HTML / CSS