除法难题: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中文网其他相关文章!