Python 中的整数除法
在 Python 中,两个整数之间的整数除法会得到一个整数,即使结果是小数分数。对于那些习惯其他编程语言的人来说,这种行为可能会令人惊讶。
示例:
考虑以下代码:
>>> (20 - 10) / (100 - 10) 0
在这里,我们预计结果为 0.1111111111111111,因为 20 之间的差异10 是 10,100 和 10 之间的差是 90。但是,Python 将除法的每一边都计算为整数,结果为 0。由于 0 除以 90 等于 0,所以最终结果四舍五入为 0。
修复:
要获得所需的结果,您可以投射其中之一将数字转换为浮点数:
>>> (20 - 10) / float((100 - 10)) 0.1111111111111111
或者,您可以导入“除法”未来功能,该功能会更改“/”运算符的行为以始终返回浮点数:
>>> from __future__ import division >>> (10 - 20) / (100 - 10) -0.1111111111111111
通过了解 Python 中默认的整数除法行为,您可以避免意外结果并确保您的代码产生所需的结果。
以上是Python 如何处理整数除法,以及如何获得浮点结果?的详细内容。更多信息请关注PHP中文网其他相关文章!