Skip to main content
 首页 » 编程设计

python之整数除法在 CPython 2.7 和 Spyder 中给出不同的结果

2025年05月04日11itcoder

我在 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 中讨论- 看起来这将默认停用以避免混淆。