Python 2 和Python 3 中的整數除法:兩個結果的故事
在Python 中除兩個數字可能看起來是一個簡單的任務,但Python 2 和Python 3 之間存在細微差別,可能會導致意外結果。
在 Python 中2.7,當兩個輸入都是整數時,/運算子執行整數除法。這會得到整數商,並丟棄任何小數部分。例如,20/15 得到 1,這是整數除法的結果。
然而,在 Python 3 中,/ 運算子預設執行浮點除法,無論輸入的類型為何。這意味著 20/15 給出的浮點結果為 1.3333333333333333,它保留了小數部分。
要在 Python 2 中實作整數除法,可以使用 // 運算符,它將商數向下捨去到最接近的整數。可以使用 % 運算子來完成模運算。例如:
>> 7 // 2 3 >> 7 % 2 1
要讓Python 2 在浮點除法方面像Python 3 一樣,您可以使用特殊導入:
from __future__ import division
確保在任何其他導入之前導入它
確保在任何其他導入之前導入它所以,請記住:在Python 2.7 中,整數除法預設為/,而在Python 3 中則相反。為了保持一致性,建議在兩個版本的 Python 中使用帶有 / 運算子的浮點除法,並使用 // 明確指定整數除法,並使用 % 明確指定取模。以上是Python 2 和 Python 3 中的整數除法有什麼不同?的詳細內容。更多資訊請關注PHP中文網其他相關文章!