我使用 NumPy 数组制作了一个简单的线性方程组求解器。我手头有两个阵列:一个 2x2 (A) 一个和一个 2x1 一个 (B)。
通过使用 反转第一个数组Ainv = np.linalg.inv(A),然后使用 将它与第二个数组相乘,我得到了第三个 2x1 数组,其中包含我想要的 x 和 y 值,该数组由顺便Ainv.dot(B)调用的函数返回。solveLin()
现在,如果我用适当的变量打印出来print(solveLin()),我会得到[[-8.]
[ 5.]]具有正确值的数组。
但是,如果我将这些值作为目标print(solveLin()[0][0]),例如,我会得到-7.999999999999998和4.999999999999999作为我的答案。
如果我将它们设置为显示为整数,它们将变为 -7 和 4
编辑:我确实理解为什么浮点数会这样,但我不明白为什么它们在数组中以一种方式显示,然后在直接调用时以另一种方式显示。