Python 2中整数除法默认截断小数,需用浮点数或导入__future__.division实现精确除法。

在 Python 2 中进行除法时,需要注意整数除法和浮点除法的区别。默认情况下,Python 2 对两个整数执行的是“地板除法”(向下取整),这可能不符合数学上的预期结果。
1. 整数除法的默认行为
当你用斜杠 / 对两个整数相除时,Python 2 会返回一个整数结果(向下取整):
>>> 5 / 2
2
即使你希望得到 2.5,它也会返回 2,因为这是整数除法的默认行为。
2. 使用浮点数获得精确结果
要得到小数结果,至少让其中一个操作数是浮点数:
立即学习“Python免费学习笔记(深入)”;
>>> 5.0 / 2
2.5
>>> 5 / 2.0
2.5
>>> float(5) / 2
2.5
3. 导入真正的除法行为
你可以在文件开头导入 __future__ 模块中的 division,这样 / 就会始终表示浮点除法,而 // 表示地板除法:
from __future__ import division
>>> 5 / 2
2.5
>>> 5 // 2
2
这个方法可以让 Python 2 的除法行为更接近 Python 3,推荐在新项目中使用。
基本上就这些。关键是意识到 Python 2 默认整数除法会截断小数部分,要么显式使用浮点数,要么导入真正的除法来避免意外。
以上就是python2如何做除法的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1375879.html
微信扫一扫
支付宝扫一扫