详谈Python2.6和Python3.0中对除法操作的异同


Posted in Python onApril 28, 2017

Python中除法有两种运算符:'/'和'//';有三种类型的除法:传统除法、Floor除法和真除法。

X / Y类型:

在Python2.6或者之前,这个操作对于整数运算会省去小数部分,而对于浮点数运算会保持小数部分;在Python3.0中变成真除法(无论任何类型都会保持小数部分,即使整除也会表示为浮点数形式)。

示例代码:

Python 2.7版本中结果:

>>> 3/2
1
>>> 3/2.0
1.5
>>> 4/2
2
>>> 4/2.0
2.0

Python 3.4版本中结果:

>>> 3/2
1.5
>>> 3/2.0
1.5
>>> 4/2
2.0
>>> 4/2.0
2.0

X // Y 类型:

Floor除法:在Python 2.2中新增的操作,在Python2.6和Python3.0中均能使用,这个操作不考虑操作对象的类型,总是省略小数部分,剩下最小的能整除的整数部分。

示例代码:

Python 2.7版本中结果:

>>> 3//2
1
>>> 3//2.0
1.0
>>> 4//2
2
>>> 4//2.0
2.0

Python 3.4版本中结果(与2.7版本一样):

概括

>>> 3//2
1
>>> 3//2.0
1.0
>>> 4//2
2
>>> 4//2.0
2.0

来讲:

• 在Python 2.6中,'/'执行传统除法,如果操作数都是整数的话,执行截断的整数除法(即对于结果只保留整数部分),否则,执行浮点除法(保留余数);'//'执行Floor除法,与Python3.0一样,对于整数执行截断除法,浮点数执行浮点除法。

• 在Python 3.0中,'/'总是执行真除法,不管操作数的类型,都会返回包含任何余数的浮点结果;'//'执行Floor除法,截除掉余数并且针对整数操作数返回一个整数,如果有任何一个操作数是浮点数,则返回一个浮点数。

-------------------------------------------------

补充:

Floor除法:效果等同于math模块中的floor函数:

math.floor(x) :返回不大于x的整数

所以当运算数是负数时:结果会向下取整。

>>> 5//3  #1.6666666666666667
1
>>> -5//3
-2
>>>

与floor()函数类似的还有很多,比如trunc()函数:

>>> import math
>>> math.trunc(-1.6)
-1
>>> math.trunc(1.6)
1

以上这篇详谈Python2.6和Python3.0中对除法操作的异同就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python创建xml的方法
Mar 10 Python
使用Python发送各种形式的邮件的方法汇总
Nov 09 Python
Python使用爬虫爬取静态网页图片的方法详解
Jun 05 Python
Python爬虫框架Scrapy基本用法入门教程
Jul 26 Python
Selenium chrome配置代理Python版的方法
Nov 29 Python
Python生命游戏实现原理及过程解析(附源代码)
Aug 01 Python
python实现对服务器脚本敏感信息的加密解密功能
Aug 13 Python
Pytorch训练过程出现nan的解决方式
Jan 02 Python
Python sys模块常用方法解析
Feb 20 Python
python实现滑雪游戏
Feb 22 Python
浅谈keras.callbacks设置模型保存策略
Jun 18 Python
python中常见错误及解决方法
Jun 21 Python
浅谈Python2.6和Python3.0中八进制数字表示的区别
Apr 28 #Python
用pickle存储Python的原生对象方法
Apr 28 #Python
Python标准库之collections包的使用教程
Apr 27 #Python
Golang与python线程详解及简单实例
Apr 27 #Python
Mac中升级Python2.7到Python3.5步骤详解
Apr 27 #Python
详解Python 2.6 升级至 Python 2.7 的实践心得
Apr 27 #Python
Python中创建字典的几种方法总结(推荐)
Apr 27 #Python
You might like
IIS+PHP+MySQL+Zend配置 (视频教程)
2006/12/13 PHP
在php和MySql中计算时间差的方法详解
2015/03/27 PHP
PHP中使用curl入门教程
2015/07/02 PHP
HTML中嵌入PHP的简单方法
2016/02/16 PHP
详解WordPress中添加友情链接的方法
2016/05/21 PHP
php两点地理坐标距离的计算方法
2018/12/29 PHP
日期函数扩展类Ver0.1.1
2006/09/07 Javascript
jquery实现图片裁剪思路及实现
2013/08/16 Javascript
JS操作数据库的实例代码
2013/10/17 Javascript
node.js中的http.createClient方法使用说明
2014/12/15 Javascript
JavaScript返回上一页的三种方法及区别介绍
2015/07/04 Javascript
[原创]Javascript 实现广告后加载 可加载百度谷歌联盟广告
2016/05/11 Javascript
JS调用某段SQL语句的方法
2016/10/20 Javascript
Angular动态添加、删除输入框并计算值实例代码
2017/03/29 Javascript
JS中offset和匀速动画详解
2018/02/06 Javascript
详解webpack打包nodejs项目(前端代码)
2018/09/19 NodeJs
点击按钮弹出模态框的一系列操作代码实例
2019/03/29 Javascript
django中使用vue.js的要点总结
2019/07/07 Javascript
python聊天程序实例代码分享
2013/11/18 Python
利用Python-iGraph如何绘制贴吧/微博的好友关系图详解
2017/11/02 Python
详解python中@的用法
2019/03/27 Python
python利用dlib获取人脸的68个landmark
2019/11/27 Python
python中的split()函数和os.path.split()函数使用详解
2019/12/21 Python
为什么说python适合写爬虫
2020/06/11 Python
使用pytorch实现论文中的unet网络
2020/06/24 Python
Schutz鞋官方网站:Schutz Shoes
2017/12/13 全球购物
澳大利亚领先的武术用品和健身器材供应商:SMAI
2019/03/24 全球购物
应届生污水处理求职信
2013/11/06 职场文书
中学生励志演讲稿
2014/04/26 职场文书
公开承诺书格式
2014/05/21 职场文书
分公司负责人任命书
2014/06/04 职场文书
2014领导班子四风问题对照检查材料思想汇报
2014/09/21 职场文书
领导干部作风建设工作总结
2014/10/23 职场文书
2016中考冲刺决心书
2015/09/22 职场文书
Python 类,对象,数据分类,函数参数传递详解
2021/09/25 Python
Windows server 2012 R2 安装IIS服务器
2022/04/29 Servers