Python除法之传统除法、Floor除法及真除法实例详解


Posted in Python onMay 23, 2019

先给大家介绍下Python除法之传统除法、Floor除法及真除法

python3.0

/总是执行真除法,不管操作数的类型,都返回浮点数结果(即使能整除,如4/2==2.0);
//执行Floor除法,会截断余数直接返回一个整数,如果有任何一个操作数是浮点数则返回浮点数(如4//2==2,3//2==1.5, 4.0//2==2.0)

总之:在python3.0中,/为真除法,不会截断,且结果无论能否整除都是浮点数;//为地板除法,会对除法的结果进行取整返回,至于返回的结果是否是浮点数取决于操作数中有无浮点数,如两个操作数都是整数那么就直接返回一个取整后的整数,如果操作数中有浮点数则返回结果是浮点数。

python2.0

/表示传统除法,如果两个操作数都是整数的话执行截断除法,否则执行浮点除法,//执行Floor除法,同3.0

注意

在3.0中,/的结果总是返回浮点数与操作数类型无关,而//的结果总是依赖于操作数的类型,如果有一个是浮点数结果就是浮点数

ps:下面看下Python3除法之真除法、截断除法和下取整对比

概述

在Python3中,数学运算中的除法被分为两种,分别是“真除法”,即无论任何类型相除的结果都会保留小数点,和我们实际的数学运算结果一致,而“截断除法”,则是无论任何类型相除的结果都会省略结果的小数部分,剩下最小的能整除的整数部分。以下是两种除法的基本形式:

# 真除法
X / Y
# 截断除法
X // Y

真除法

X = 8
Y = 2
Z = 3
print(X / Y)
print(X / Z)

示例结果:

4.0
2.6666666666666665

真除法的结果表明不论操作数的类型其相除结果都返回一个浮点结果。

截断除法

X = 8
Y = 2
Z = 3
S = -8

print(X // Y)
print(X // Z)
print(S // Y)
print(S // Z)

示例结果:

4
2
-4
-3

从示例中我们可以看到,截断除法并不是真的直接去掉小数点后面的数字,而是类似模块 math 中的 floor 方法,即向下取整,且负值的取整方式也是这样的。

import math
math.floor(2.0)
math.floor(2.6666666666666665)
math.floor(-2.0)
math.floor(-2.6666666666666665)

示例结果:

2
2
-2
-3

同样的模块 math 中的 ceil 方法可以实现浮点数的上取整。

import math
print(math.ceil(2.0))
print(math.ceil(2.6666666666666665))
print(math.ceil(-2.0))
print(math.ceil(-2.6666666666666665))

2
3
-2
-2

总结

以上所述是小编给大家介绍的Python除法之传统除法、Floor除法及真除法,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

Python 相关文章推荐
Python实现partial改变方法默认参数
Aug 18 Python
Python写的服务监控程序实例
Jan 31 Python
Python类和对象的定义与实际应用案例分析
Dec 27 Python
pyhanlp安装介绍和简单应用
Feb 22 Python
Python远程视频监控程序的实例代码
May 05 Python
cProfile Python性能分析工具使用详解
Jul 22 Python
使用Python为中秋节绘制一块美味的月饼
Sep 11 Python
Python解释器及PyCharm工具安装过程
Feb 26 Python
Python中的全局变量如何理解
Jun 04 Python
Python定义一个Actor任务
Jul 29 Python
python实现Nao机器人的单目测距
Sep 04 Python
Python实现科学占卜 让视频自动打码
Apr 09 Python
详解Python3除法之真除法、截断除法和下取整对比
May 23 #Python
python实现远程控制电脑
May 23 #Python
python日志logging模块使用方法分析
May 23 #Python
Django框架模板语言实例小结【变量,标签,过滤器,继承,html转义】
May 23 #Python
Django框架模板文件使用及模板文件加载顺序分析
May 23 #Python
Django框架登录加上验证码校验实现验证功能示例
May 23 #Python
python图形工具turtle绘制国际象棋棋盘
May 23 #Python
You might like
php中cookie的作用域
2008/03/27 PHP
php读取msn上的用户信息类
2008/12/05 PHP
php at(@)符号的用法简介
2009/07/11 PHP
Apache服务器无法使用的解决方法
2013/05/08 PHP
php模式设计之观察者模式应用实例分析
2019/09/25 PHP
15 个 JavaScript Web UI 库
2010/05/19 Javascript
早该知道的7个JavaScript技巧
2013/03/27 Javascript
Js控制弹窗实现在任意分辨率下居中显示
2013/08/01 Javascript
Javascript 鼠标移动上去 滑块跟随效果代码分享
2013/11/23 Javascript
javascript中Math.random()使用详解
2015/04/15 Javascript
javascript判断并获取注册表中可信任站点的方法
2015/06/01 Javascript
基于jQuery全屏焦点图左右切换插件responsiveslides
2015/09/07 Javascript
详解js中构造流程图的核心技术JsPlumb
2015/12/08 Javascript
学习使用Bootstrap输入框、导航、分页等常用组件
2017/05/11 Javascript
原生js的ajax和解决跨域的jsonp(实例讲解)
2017/10/16 Javascript
10个经典的网页鼠标特效代码
2018/01/09 Javascript
Javascript幻灯片播放功能实现过程解析
2020/05/07 Javascript
python批量提取word内信息
2015/08/09 Python
django将数组传递给前台模板的方法
2019/08/06 Python
Python 共享变量加锁、释放详解
2019/08/28 Python
python 爬取古诗文存入mysql数据库的方法
2020/01/08 Python
keras中的卷积层&池化层的用法
2020/05/22 Python
Python pip使用超时问题解决方案
2020/08/03 Python
整理的15个非常有用的 HTML5 开发教程和速查手册
2011/10/18 HTML / CSS
中国跨境电子商务网站:NewFrog
2018/03/10 全球购物
后勤工作职责
2013/12/22 职场文书
医科大学毕业生自荐信
2014/02/03 职场文书
幼儿园教师岗位职责
2014/03/17 职场文书
平安建设实施方案
2014/03/19 职场文书
反四风个人对照检查材料
2014/09/26 职场文书
机关作风建设心得体会
2014/10/22 职场文书
项目经理助理岗位职责
2015/04/13 职场文书
2015年保卫科工作总结
2015/05/14 职场文书
2016年主题党日活动总结
2016/04/05 职场文书
创业计划书之水果店
2019/07/18 职场文书
python实现三次密码验证的示例
2021/04/29 Python