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 相关文章推荐
17个Python小技巧分享
Jan 23 Python
python实现文件路径和url相互转换的方法
Jul 06 Python
Python向MySQL批量插数据的实例讲解
Mar 31 Python
解决python爬虫中有中文的url问题
May 11 Python
使用pycharm生成代码模板的实例
May 23 Python
Tensorflow实现卷积神经网络的详细代码
May 24 Python
Python 从列表中取值和取索引的方法
Dec 25 Python
django多文件上传,form提交,多对多外键保存的实例
Aug 06 Python
Anaconda3+tensorflow2.0.0+PyCharm安装与环境搭建(图文)
Feb 18 Python
python中setuptools的作用是什么
Jun 19 Python
tensorflow 2.1.0 安装与实战教程(CASIA FACE v5)
Jun 30 Python
Python 如何对文件目录操作
Jul 10 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
基于qmail的完整WEBMAIL解决方案安装详解
2006/10/09 PHP
PHP 网络开发详解之远程文件包含漏洞
2010/04/25 PHP
php中http_build_query 的一个问题
2012/03/25 PHP
PHP Global变量定义当前页面的全局变量实现探讨
2013/06/05 PHP
PHP防止图片盗用(盗链)的方法小结
2016/11/11 PHP
解决PHP curl或file_get_contents下载图片损坏或无法打开的问题
2019/10/11 PHP
PHP数组对象与Json转换操作实例分析
2019/10/22 PHP
js倒计时小程序
2013/11/05 Javascript
javascript中数组中求最大值示例代码
2013/12/18 Javascript
jquery表单验证框架提供的身份证验证方法(示例代码)
2013/12/27 Javascript
Nodejs Post请求报socket hang up错误的解决办法
2014/09/25 NodeJs
介绍JavaScript的一个微型模版
2015/06/24 Javascript
jquery无限级联下拉菜单简单实例演示
2015/11/23 Javascript
分享两款带遮罩的jQuery弹出框
2015/12/30 Javascript
webpack常用配置项配置文件介绍
2016/11/07 Javascript
Vue2.0利用 v-model 实现组件props双向绑定的优美解决方案
2017/03/13 Javascript
老生常谈js中的MVC
2017/07/25 Javascript
VueJs监听window.resize方法示例
2018/01/17 Javascript
vue项目实战总结篇
2018/02/11 Javascript
ES6 Class中实现私有属性的一些方法总结
2019/07/08 Javascript
vue input标签通用指令校验的实现
2019/11/05 Javascript
小程序卡片切换效果组件wxCardSwiper的实现
2020/02/13 Javascript
vue的hash值原理也是table切换实例代码
2020/12/14 Vue.js
[59:36]2018DOTA2亚洲邀请赛 4.3 突围赛 Secret vs VG 第二场
2018/04/04 DOTA
总结Python编程中函数的使用要点
2016/03/20 Python
django实现登录时候输入密码错误5次锁定用户十分钟
2017/11/05 Python
pycharm恢复默认设置或者是替换pycharm的解释器实例
2018/10/29 Python
Python程序打包工具py2exe和PyInstaller详解
2019/06/28 Python
CSS3中各种颜色属性的使用教程
2016/05/17 HTML / CSS
世界上最大的汽车共享网站:Zipcar
2017/01/14 全球购物
Vilebrequin欧洲官网:法国豪华泳装品牌(男士沙滩裤)
2018/04/14 全球购物
Java平台和其他软件平台有什么不同
2015/06/05 面试题
JPA的特点
2014/10/25 面试题
乡镇群众路线专项整治方案
2014/11/03 职场文书
五年级上册复习计划
2015/01/19 职场文书
Pytest之测试命名规则的使用
2021/04/16 Python