除法難題:Python 3 中整數除以小數
在Python 3 中,執行整數除法(例如2/2)會意外產生結果浮點數(1.0) 而非整數。此行為與早期的 Python 版本不同,早期的 Python 版本中整數除法會產生整數結果。
移位的起源
此更改是在 Python 3 中引入的,以解決歧義並增強數學一致性。在 Python 3 之前,Python 2 中的整數除法表現不同,向下捨去到最接近的整數(例如,2/2 得到 0)。
解決困境
為了解決這個問題,Python 3 引入了// 向下取整除法運算符,它確保整數除法並返迴向下舍入的結果(例如, 2//2 產生1)。
建議
作為最佳實踐,請始終在 Python 3 中使用 // 運算符進行樓層劃分。這可確保您獲得預期的整數結果。不需要進行強制轉換,因為 // 運算子明確執行樓層劃分。
進一步探索
有關更多信息,請參閱 PEP-238:更改除法運算符。本文檔詳細說明了更改背後的理由並提供了更多見解。
以上是為什麼 Python 3 中的整數除法會傳回浮點數,以及如何得到整數結果?的詳細內容。更多資訊請關注PHP中文網其他相關文章!