【发布时间】:2016-04-28 11:22:54
【问题描述】:
当我做这个计算时
2*(5+5/(3+3))*3
我在 Python (2.7) 中得到 30。
但看起来2*(5+5/(3+3))*3等于35。
有人能告诉我为什么 python 给我的答案是 30 而不是 35?
我用 JavaScript、Lua 和 Mac Calculator 进行了测试,结果显示为 35。
为什么Python会计算错误?
【问题讨论】:
-
有趣的是,Python 3 产生 35 ...
-
/在 Python 2 中始终是整数除法。 -
那是因为
5/6在 python 2 中产生 0 并且其他人将其评估为十进制输出 -
@DanielRoseman:那么 Python 3 中修复了什么?
/将其参数强制为浮点数? -
注意:它是python 2.7
标签: python python-2.7 math arithmetic-expressions