对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 相关文章推荐
Pycharm学习教程(1) 定制外观
May 02 Python
Python抓取聚划算商品分析页面获取商品信息并以XML格式保存到本地
Feb 23 Python
Python中max函数用于二维列表的实例
Apr 03 Python
Python流行ORM框架sqlalchemy安装与使用教程
Jun 04 Python
基于django ManyToMany 使用的注意事项详解
Aug 09 Python
Python文件路径名的操作方法
Oct 30 Python
django执行数据库查询之后实现返回的结果集转json
Mar 31 Python
pyecharts调整图例与各板块的位置间距实例
May 16 Python
基于django 的orm中非主键自增的实现方式
May 18 Python
详解Python中string模块除去Str还剩下什么
Nov 30 Python
使用Python脚本对GiteePages进行一键部署的使用说明
May 27 Python
python神经网络Xception模型
May 06 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检测图片木马多进制编程实践
2013/04/11 PHP
浅析php工厂模式
2014/11/25 PHP
php定义一个参数带有默认值的函数实例分析
2015/03/16 PHP
从wamp到xampp的升级之路
2015/04/08 PHP
PHP中Socket连接及读写数据超时问题分析
2016/07/19 PHP
PHP文件与目录操作示例
2016/12/24 PHP
PHP array_reverse() 函数原理及实例解析
2020/07/14 PHP
调用js时ie6和ie7,ff的区别
2009/08/19 Javascript
js倒计时抢购实例
2015/12/20 Javascript
jQuery图片轮播插件——前端开发必看
2016/05/31 Javascript
需灵活掌握的Bootstrap预定义排版类 你精通吗?
2016/06/20 Javascript
js时间比较 js计算时间差的简单实现方法
2016/08/26 Javascript
Bootstrap的基本应用要点浅析
2016/12/19 Javascript
bootstrap table分页模板和获取表中的ID方法
2017/01/10 Javascript
vuejs响应用户事件(如点击事件)
2017/03/14 Javascript
React Native 自定义下拉刷新上拉加载的列表的示例
2018/03/01 Javascript
Javascript中prototype与__proto__的关系详解
2018/03/11 Javascript
vue添加axios,并且指定baseurl的方法
2018/09/19 Javascript
vue 基于element-ui 分页组件封装的实例代码
2018/12/10 Javascript
浅谈javascript如何获取文件后缀名
2020/08/07 Javascript
[00:43]魔廷新尊——痛苦女王至宝捆绑包
2020/06/12 DOTA
Python自动重试HTTP连接装饰器
2015/04/28 Python
python五子棋游戏的设计与实现
2019/06/18 Python
如何使用selenium和requests组合实现登录页面
2020/02/03 Python
使用Python爬取Json数据的示例代码
2020/12/07 Python
使用Html5、CSS实现文字阴影效果
2018/01/17 HTML / CSS
div或img图片高度随宽度自适应的方法
2020/02/06 HTML / CSS
Mountain Warehouse德国官网:英国户外零售商
2019/08/11 全球购物
爱心活动计划书
2014/04/26 职场文书
企业总经理任命书
2014/06/05 职场文书
高一学年自我鉴定范文(3篇)
2014/09/26 职场文书
幼儿学前班评语
2014/12/29 职场文书
晚会开场白和结束语
2015/05/29 职场文书
推广普通话主题班会
2015/08/17 职场文书
MySQL连表查询分组去重的实现示例
2021/07/01 MySQL
MySQL 用 limit 为什么会影响性能
2021/09/15 MySQL