对python中的float除法和整除法的实例详解


Posted in Python onJuly 20, 2019

从python2.2开始,便有两种除法运算符:"/"、"//"。两者最大区别在:

python2.2前的版本和python2.2以后3.0以前的版本的默认情况下,"/"所做的除法是以一种两个数或者多个数出现一个浮点数结果就以浮点数的形式表示,即float除法

"//"所做的除法则不相同,"//"不管两者出现任何数,都以整除结果为准,不对小数部分进行处理,直接抛弃,也就是整除法

以下是笔者在编译器测试的数据,测试的版本是python2.7

关于"/":

>>> 3/2
1
>>> 3/2.0
1.5
>>> 3.0/2
1.5
>>> 10/3.0
3.3333333333333335

由以上的例子我们可得出,只要除数中有一个数是浮点数,那么得到的结果也是浮点数

以下是关于"//":

>>> 3//2
1
>>> 3//2.0
1.0
>>> 3.0//2
1.0
>>> 3.0//2.0
1.0

由以上的例子,我们可以看出,两个整型相除,得到的还是整型,但是。如果一个浮点数除以一个非浮点数得到的还会是一个浮点数,但是,计算的结果却是忽略小数部分,运算的结果类似两个整型相除,但是得到一个浮点数。另外"//"对于两个浮点数也是不例外的。

如何让"/"和"//"进行分工

在默认情况下,这两种运算符有很大的重叠地方,比如,当两个数都是整数的时候,两者的运算结果是没有区别的。如果想在python中让这两种有一个明确的分工。即"/"可以用于float除法,"//"用于整除法,我们可以在程序开始的时候做以下声明:

from __future__ import division

声明后测试的结果(以下测试的版本是python2.7)

>>> from __future__ import division
>>> 3/2
1.5
>>> 3.0/2
1.5
>>> 3/2.0
1.5
>>> 3.0/2.0
1.5
>>> 3//2
1
>>> 3.0//2
1.0
>>> 3.0//2.0
1.0
>>> 3//2.0
1.0
>>> -11/2
-5.5

以上,我们可以知道,做这个声明以后,"/"进行的将是float除法而不是整除法。

还需要注意的是,在pyhton3中,"/"表示的就是float除,不需要再引入模块,就算分子分母都是int,返回的也将是浮点数

以上这篇对python中的float除法和整除法的实例详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python实现数据库编程方法详解
Jun 09 Python
python中利用h5py模块读取h5文件中的主键方法
Jun 05 Python
Python解决两个整数相除只得到整数部分的实例
Nov 10 Python
关于python下cv.waitKey无响应的原因及解决方法
Jan 10 Python
Django中信号signals的简单使用方法
Jul 04 Python
Python判断字符串是否xx开始或结尾的示例
Aug 08 Python
Python创建一个元素都为0的列表实例
Nov 28 Python
pytorch制作自己的LMDB数据操作示例
Dec 18 Python
使用Python实现Wake On Lan远程开机功能
Jan 22 Python
Python的Tqdm模块实现进度条配置
Feb 24 Python
python基础详解之if循环语句
Apr 24 Python
Python编程中Python与GIL互斥锁关系作用分析
Sep 15 Python
python从list列表中选出一个数和其对应的坐标方法
Jul 20 #Python
Python实现一个数组除以一个数的例子
Jul 20 #Python
python 环境搭建 及python-3.4.4的下载和安装过程
Jul 20 #Python
在Python中append以及extend返回None的例子
Jul 20 #Python
python 字符串追加实例
Jul 20 #Python
python爬取盘搜的有效链接实现代码
Jul 20 #Python
python将字符串list写入excel和txt的实例
Jul 20 #Python
You might like
php循环检测目录是否存在并创建(循环创建目录)
2011/01/06 PHP
PH P5.2至5.5、5.6的新增功能详解
2014/07/14 PHP
thinkphp3.2.2前后台公用类架构问题分析
2014/11/25 PHP
修改PHP脚本使WordPress拦截垃圾评论的方法示例
2015/12/10 PHP
thinkPHP中分页用法实例分析
2015/12/26 PHP
Ajax中的JSON格式与php传输过程全面解析
2017/11/14 PHP
ThinkPHP实现转换数据库查询结果数据到对应类型的方法
2017/11/16 PHP
JavaScript网页制作特殊效果用随机数
2007/05/22 Javascript
Js event事件在IE、FF兼容性问题
2011/01/01 Javascript
javascript 禁用IE工具栏,导航栏等等实现代码
2013/04/01 Javascript
解决jquery1.9不支持browser对象的问题
2013/11/13 Javascript
JS排序方法(sort,bubble,select,insert)代码汇总
2016/01/30 Javascript
JavaScript给每一个li节点绑定点击事件的实现方法
2016/12/01 Javascript
详解webpack打包vue时提取css
2017/05/26 Javascript
微信页面弹出键盘后iframe内容变空白的解决方案
2017/09/20 Javascript
javascript实现数字时钟效果
2021/02/06 Javascript
[00:43]拉比克至宝魔导师密钥展示
2018/12/20 DOTA
Python中for循环详解
2014/01/17 Python
django实现用户登陆功能详解
2017/12/11 Python
Python基于OpenCV实现视频的人脸检测
2018/01/23 Python
Tensorflow的可视化工具Tensorboard的初步使用详解
2018/02/11 Python
Python实现模拟登录网易邮箱的方法示例
2018/07/05 Python
Python中捕获键盘的方式详解
2019/03/28 Python
Python 读取WAV音频文件 画频谱的实例
2020/03/14 Python
django 实现手动存储文件到model的FileField
2020/03/30 Python
Python常用外部指令执行代码实例
2020/11/05 Python
投标邀请书范文
2014/01/31 职场文书
小学评语大全
2014/04/22 职场文书
2014超市收银员工作总结
2014/11/13 职场文书
大学生自荐书范文
2015/03/05 职场文书
求职信格式范文
2015/03/19 职场文书
计算机教师工作总结
2015/08/13 职场文书
禁毒主题班会教案
2015/08/14 职场文书
Python使用sql语句对mysql数据库多条件模糊查询的思路详解
2021/04/12 Python
JavaWeb Servlet开发注册页面实例
2022/04/11 Java/Android
Docker 镜像介绍以及commit相关操作
2022/04/13 Servers