更新時間:2018年01月30日11時30分 來源:傳智播客 瀏覽次數:
通常C/C++中,"/ " 算術運算符的計算結果是根據參與運算的兩邊的數據決定的,比如:
6 / 3 = 2 ; 6,3都是整數,那么結果也就是整數2;
6.0 / 3.0 = 2.0 ; 6.0,3.0是浮點數,那么結果也是浮點數2.0,跟精確的說,只要" / " 兩邊有一個數是浮點數,那么結果就是浮點數。
在Python2.2版本以前也是這么規(guī)定的,但是,Python的設計者認為這么做不符合Python簡單明了的特性,于是乎就在Python2.2以及以后的版本中增加了一個算術運算符" // "來表示整數除法,返回不大于結果的一個最大的整數,而" / " 則單純的表示浮點數除法,但是,為了折中,所有2.X版本中,也是為了向后兼容,如果要使用" // ",就必須加上一條語句:
from __future__ import division
一看到這句," / "就表示 浮點數除法,返回浮點結果;" // "表示整數除法。
但是,預計在Python3.0發(fā)布時,就沒有這種折中情況了,," / "就一定表示 浮點數除法,返回浮點結果;" // "表示整數除法。