我在IDE中运行了完全相同的numpy python代码,结果不同。这怎么可能?

我在IDE中运行了完全相同的numpy python代码,结果不同。这怎么可能?,python,visual-studio-code,Python,Visual Studio Code,我正在DataCamp上学习python,并尝试使用VSCode在我的计算机上重现课程中的代码。事实证明,完全相同的代码会产生不同的结果 因此,从本课程中,下面的代码应产生3214.35 np.pmt(rate=((1+0.07)**(1/12) - 1), nper=15*12, pv=0, fv=1000000) 但当我在IDE中运行它(复制和粘贴)时,它会产生-5555.55 这怎么可能呢?这是因为您正在运行Python 2。请注意,Python2.X和Python3.X之间的除法有一些

我正在DataCamp上学习python,并尝试使用VSCode在我的计算机上重现课程中的代码。事实证明,完全相同的代码会产生不同的结果

因此,从本课程中,下面的代码应产生
3214.35

np.pmt(rate=((1+0.07)**(1/12) - 1), nper=15*12, pv=0, fv=1000000)
但当我在IDE中运行它(复制和粘贴)时,它会产生
-5555.55


这怎么可能呢?

这是因为您正在运行Python 2。请注意,Python2.X和Python3.X之间的除法有一些显著的差异

> python2.7
>>> import numpy as np
>>> np.pmt(rate=((1+0.07)**(1/12) - 1), nper=15*12, pv=0, fv=1000000)
-5555.5555555555557

> python3
>>> import numpy as np
>>> np.pmt(rate=((1+0.07)**(1/12) - 1), nper=15*12, pv=0, fv=1000000)
-3214.351338524575
如果您仍然想使用Python 2.X,只需将
(1/12)
更改为
(1/12.0)


一种解释可能是,在VSCode中有python 3.x,在IDE中有python 2.x。在Python2.x
(1/12)
中,这是整数除法,产生
0
,您需要将其更改为
(1/12.0)
。谢谢!但是,我在settings.json的“python.pythonPath”中有这样的内容:“/Library/Frameworks/python.framework/Versions/3.7/bin/python3”,并且已经在解释器中选择了python 3.7.4。我还需要做什么才能使用python3?您使用的IDE是什么?只需添加来自未来导入部门的
请忽略我的最后一条消息。它还没修好@chris_rands如何从未来的进口部门添加?@Giorgosmyriantous老实说,我现在甚至不确定。我只是使用代码编辑器vscode并将python作为扩展安装。我该怎么办?
> python2.7
>>> import numpy as np
>>> np.pmt(rate=((1+0.07)**(1/12.0) - 1), nper=15*12, pv=0, fv=1000000)
-3214.3513385245751