详解Python3除法之真除法、截断除法和下取整对比


Posted in Python onMay 23, 2019

概述

在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 相关文章推荐
利用Python的Twisted框架实现webshell密码扫描器的教程
Apr 16 Python
python高手之路python处理excel文件(方法汇总)
Jan 07 Python
Python实现屏幕截图的代码及函数详解
Oct 01 Python
Python与R语言的简要对比
Nov 14 Python
Python竟能画这么漂亮的花,帅呆了(代码分享)
Nov 15 Python
python单线程文件传输的实例(C/S)
Feb 13 Python
11个Python Pandas小技巧让你的工作更高效(附代码实例)
Apr 30 Python
PyQt5 实现字体大小自适应分辨率的方法
Jun 18 Python
Django实现微信小程序的登录验证功能并维护登录态
Jul 04 Python
Pytorch 定义MyDatasets实现多通道分别输入不同数据方式
Jan 15 Python
Python matplotlib修改默认字体的操作
Mar 05 Python
python中format函数如何使用
Jun 22 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
python os模块简单应用示例
May 23 #Python
You might like
第七节 类的静态成员 [7]
2006/10/09 PHP
PHP开发框架laravel安装与配置教程
2015/03/13 PHP
php 调用ffmpeg获取视频信息的简单实现
2017/04/03 PHP
[原创]PHP实现生成vcf vcard文件功能类定义与使用方法详解【附demo源码下载】
2017/09/02 PHP
ThinkPHP5.0框架结合Swoole开发实现WebSocket在线聊天案例详解
2019/04/02 PHP
laravel 数据迁移与 Eloquent ORM的实现方法
2019/04/12 PHP
基于Laravel 5.2 regex验证的正确写法
2019/09/29 PHP
小议Javascript中的this指针
2010/03/18 Javascript
关于可运行代码无法正常执行的使用说明
2010/05/13 Javascript
jQuery的12招常用技巧分享
2011/08/08 Javascript
jquery 单引号和双引号的区别及使用注意
2013/07/31 Javascript
jquery.validate的使用说明介绍
2013/11/12 Javascript
javascript实现完美拖拽效果
2015/05/06 Javascript
详解JavaScript中setSeconds()方法的使用
2015/06/11 Javascript
详解jQuery中的元素的属性和相关操作
2015/08/14 Javascript
使用Sticky组件实现带sticky效果的tab导航和滚动导航的方法
2016/03/22 Javascript
Jquery获取第一个子元素简单实例
2016/06/02 Javascript
详解vuejs之v-for列表渲染
2017/06/22 Javascript
JavaScript中正则表达式判断匹配规则及常用方法
2017/08/03 Javascript
nodejs实现范围请求的实现代码
2018/10/12 NodeJs
jQuery选择器之层次选择器用法实例分析
2019/02/19 jQuery
vue实现移动端项目多行文本溢出省略
2020/07/29 Javascript
详解JavaScript执行模型
2020/11/16 Javascript
Django视图和URL配置详解
2018/01/31 Python
python爬虫框架scrapy实现模拟登录操作示例
2018/08/02 Python
值得收藏的10道python 面试题
2019/04/15 Python
selenium处理元素定位点击无效问题
2019/06/12 Python
python pandas 时间日期的处理实现
2019/07/30 Python
PyTorch里面的torch.nn.Parameter()详解
2020/01/03 Python
tensorflow之并行读入数据详解
2020/02/05 Python
Sephora丝芙兰印尼官方网站:购买化妆品和护肤品
2018/07/02 全球购物
英国最大的笔记本电脑直销专家:Laptops Direct
2019/07/20 全球购物
大学生自我鉴定评语
2014/01/27 职场文书
安全生产专项整治方案
2014/05/06 职场文书
运动会演讲稿
2014/05/07 职场文书
学校学习雷锋活动总结
2014/07/03 职场文书