我在 Python 中遇到了一个很奇怪的情况。
在 Spyder 中:
>>> 274/365
0.7506849315068493
>>> sys.version
'2.7.6 (default, Dec 20 2013, 14:08:04) [MSC v.1700 64 bit (AMD64)]'
>>>
但是在命令行中它返回 0。
>>> 274/365
0
>>> 274/365 * 1.0
0.0
>>> 274/365.0
0.7506849315068493
相同版本的 Python。
谁能告诉我这里出了什么问题?我需要在程序之前添加一些其他选项吗?这真的很恶心,因为如果我通过命令行调用它,我的代码会给出奇怪的结果。
最佳答案
Spyder 在其控制台中执行 from __future__ import division
。
这在 https://code.google.com/p/spyderlib/issues/detail?id=1646 中讨论- 看起来这将默认停用以避免混淆。
关于python - 整数除法在 CPython 2.7 和 Spyder 中给出不同的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23672960/