Numpy.linalg.det()返回不正确的结果

时间:2014-12-06 02:06:19

标签: python windows python-3.x numpy runtime-error

有谁知道为什么Numpy会返回“-2.0000000000000004”而不是“-2”

>>> M = [[1,2],[3,4]]
>>> numpy.linalg.det(M)
-2.0000000000000004

我使用的是Python 3.4.2(x64),Numpy 1.9.1和Windows 7 x64。

1 个答案:

答案 0 :(得分:0)

使用带有第二个参数的 round 作为 2(或根据需要)

示例:

M = [[1,2],[3,4]]

print (  numpy.linalg.det(M)  )          # -2.0000000000000004

print (  round(numpy.linalg.det(M),2)  ) # -2.0