2011-05-23 113 views

回答

16

這並不奇怪行爲從round()

試試這個:

>>> 2/3 
0 

使用帶有兩個整數值的/將執行整數除法。所以參數round()已經 0,這使得round()返回0

更新:2/3會做一個浮點除法爲2.0/3確實在Python 2:爲@馬克的評論,this behaviour changed in Python 3注意。2//3可用於在兩個版本上獲得整數除法行爲)。

你的最後一個例子工程,因爲2.0不是整數,所以2.0/3會做一個「propper」浮點除法:

>>> 2.0/3 
0.6666666666666666 
+0

感謝您的快速回復 – Jibin 2011-05-23 08:58:34

+3

注意這是蟒蛇1.x和2真.x但python> - 3已經改變了這個,所以2/3給出0.6666666666666666參見 Mark 2011-05-23 08:59:22

相關問題