详解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赋值语句后逗号的作用分析
Jun 08 Python
python中使用序列的方法
Aug 03 Python
python中urlparse模块介绍与使用示例
Nov 19 Python
python队列通信:rabbitMQ的使用(实例讲解)
Dec 22 Python
python 保存float类型的小数的位数方法
Oct 17 Python
Python一个简单的通信程序(客户端 服务器)
Mar 06 Python
Python3 实现文件批量重命名示例代码
Jun 03 Python
简单了解python的一些位运算技巧
Jul 13 Python
对Python中一维向量和一维向量转置相乘的方法详解
Aug 26 Python
python3通过udp实现组播数据的发送和接收操作
May 05 Python
selenium+超级鹰实现模拟登录12306
Jan 24 Python
Pytest实现setup和teardown的详细使用详解
Apr 17 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
Windows和Linux中php代码调试工具Xdebug的安装与配置详解
2014/05/08 PHP
PHP统计当前在线用户数实例讲解
2015/10/21 PHP
Laravel重定向,a链接跳转,控制器跳转示例
2019/10/22 PHP
PHP的new static和new self的区别与使用
2019/11/27 PHP
jquery.validate使用攻略 第一部
2010/07/01 Javascript
解决iframe的frameborder在chrome/ff/ie下的差异
2010/08/12 Javascript
Javascript 面向对象编程(一) 封装
2011/08/28 Javascript
jQuery jcrop插件截图使用方法
2013/11/20 Javascript
js设置文本框中焦点位置在最后的示例代码(简单实用)
2014/03/04 Javascript
用js格式化金额可设置保留的小数位数
2014/05/09 Javascript
js统计录入文本框中字符的个数并加以限制不超过多少
2014/05/23 Javascript
深入学习JavaScript的AngularJS框架中指令的使用方法
2016/03/05 Javascript
js基于cookie方式记住返回页面用法示例
2016/05/27 Javascript
jQuery Ajax 异步加载显示等待效果代码分享
2016/08/01 Javascript
微信小程序 自定义对话框实例详解
2017/01/20 Javascript
javascript 显示全局变量与隐式全局变量的区别
2017/02/09 Javascript
JavaScript实现的斑马线表格效果【隔行变色】
2017/09/18 Javascript
vue一个页面实现音乐播放器的示例
2018/02/06 Javascript
使用异步组件优化Vue应用程序的性能
2019/04/28 Javascript
eslint 的三大通用规则详解
2019/05/16 Javascript
JS端基于download.js实现图片、视频时直接下载而不是打开预览
2020/05/09 Javascript
jQuery实现推拉门效果
2020/10/19 jQuery
jQuery是用来干什么的 jquery其实就是一个js框架
2021/02/04 jQuery
Linux下多个Python版本安装教程
2018/08/15 Python
对python数据切割归并算法的实例讲解
2018/12/12 Python
python内存监控工具memory_profiler和guppy的用法详解
2019/07/29 Python
用Pytorch训练CNN(数据集MNIST,使用GPU的方法)
2019/08/19 Python
非功能性需求都包括哪些方面
2013/10/29 面试题
元旦活动感言
2014/03/08 职场文书
《三顾茅庐》教学反思
2014/04/10 职场文书
中药学专业求职信
2014/05/31 职场文书
党的群众路线教育实践活动学习笔记范文
2014/11/06 职场文书
大学生旷课检讨书1000字
2015/02/19 职场文书
理解深度学习之深度学习简介
2021/04/14 Python
Win11怎样将锁屏账户头像图片改成动画视频
2021/11/21 数码科技
JavaScript实现外溢动态爱心的效果的示例代码
2022/03/21 Javascript