低版本中Python除法运算小技巧

yipeiwu_com6年前Python基础

首先要说的是python中的除法运算,在python 2.5版本中存在两种除法运算,即所谓的true除法和floor除法。当使用x/y形式进行除法运算时,如果x和y都是整形,那么运算的会对结果进行截取,取运算的整数部分,比如2/3的运算结果是0;如果x和y中有一个是浮点数,那么会进行所谓的true除法,比如2.0/3的结果是 0.66666666666666663。另外一种除法是采用x//y的形式,那么这里采用的是所谓floor除法,即得到不大于结果的最大整数值,这个运算时与操作数无关的。比如2//3的结果是0,-2//3的结果是-1,-2.0//3的结果是-1.0。

    在未来的python 3.0中,x/y将只执行true除法,而与操作数无关;x//y则执行floor除法。如果需要在2.5版本的python中进行这样的用法,则需要在代码前加入from __future__ import division的声明。如:

复制代码 代码如下:

from __future__ import division 
a=2/3                 
from __future__ import division a=2/3

这时变量a的结果将是0.66666666666666663,而不是原来的3了。

相关文章

安装好Pycharm后如何配置Python解释器简易教程

安装好Pycharm后如何配置Python解释器简易教程

这两天有许多Python小白加入学习群,并且问了许多关于Pycharm基本使用的问题,今天小编就以配置Python解释器的问题给大家简单絮叨一下。 1、一般来说,当我们启动Pycharm...

详解python之配置日志的几种方式

作为开发者,我们可以通过以下3中方式来配置logging: 1)使用Python代码显式的创建loggers, handlers和formatters并分别调用它们的配置函数; 2)...

python实现五子棋人机对战游戏

python实现五子棋人机对战游戏

本文代码基于 python3.6 和 pygame1.9.4。 五子棋比起我之前写的几款游戏来说,难度提高了不少。如果是人与人对战,那么,电脑只需要判断是否赢了就可以。如果是人机对战,那...

python使用json序列化datetime类型实例解析

使用python的json模块序列化时间或者其他不支持的类型时会抛异常,例如下面的代码: # -*- coding: cp936 -*- from datetime import d...

Python基础之循环语句用法示例【for、while循环】

本文实例讲述了Python基础之循环语句用法。分享给大家供大家参考,具体如下: while 循环 Python中while语句的一般形式: while 判断条件:  &nbs...