Python中的/和//算术运算符

  • 内容
  • 评论
  • 相关

原文地址:http://tech.it168.com/o/2008-01-18/200801180029121.shtml

通常C/C++中,"/ " 算术运算符的计算结果是根据参与运算的两边的数据决定的,比如:

6 / 3 = 2 ; 6,3都是整数,那么结果也就是整数2;

6.0 / 3.0 = 2.0 ; 6.0,3.0是浮点数,那么结果也是浮点数2.0,跟精确的说,只要" / " 两边有一个数是浮点数,那么结果就是浮点数。

在Python2.2版本以前也是这么规定的,但是,Python的设计者认为这么做不符合Python简单明了的特性,于是乎就在Python2.2以及以后的版本中增加了一个算术运算符" // "来表示整数除法,返回不大于结果的一个最大的整数,而" / " 则单纯的表示浮点数除法,但是,为了折中,所有2.X版本中,也是为了向后兼容,如果要使用" // ",就必须加上一条语句:

from __future__ import division

一看到这句," / "就表示 浮点数除法,返回浮点结果;" // "表示整数除法。

但是,预计在Python3.0发布时,就没有这种折中情况了,," / "就一定表示 浮点数除法,返回浮点结果;" // "表示整数除法。

 

评论

0条评论

发表评论

电子邮件地址不会被公开。 必填项已用*标注