Python 在numpy中查找方程组中的未知变量

Python 在numpy中查找方程组中的未知变量,python,python-2.7,numpy,Python,Python 2.7,Numpy,我有六个方程和六个变量。我通过numpy使用np.linalg.solve(a,b)来解决它。结果给了我6个值,但我不知道哪个值是x1,x2。。。未知变量结果只满足一个方程,即 x1+x2+x3+x4+x5+x6=1. 但它不满足其他方程。我认为x[0]是x1。x[1]是x2,但这不是真的,因为当我按照这个格式放置时,其他方程不满足。如何在返回列表中找到哪个是x1、x2、x3、x4、x5、x6?我的代码是 import numpy as np

我有六个方程和六个变量。我通过
numpy
使用
np.linalg.solve(a,b)
来解决它。结果给了我6个值,但我不知道哪个值是x1,x2。。。未知变量结果只满足一个方程,即

                          x1+x2+x3+x4+x5+x6=1.
但它不满足其他方程。我认为x[0]是x1。x[1]是x2,但这不是真的,因为当我按照这个格式放置时,其他方程不满足。如何在返回列表中找到哪个是x1、x2、x3、x4、x5、x6?我的代码是

import numpy as np
a = np.array([[-1,0,0,0.25,1,0.33], [0.33,-1,0,0,0,0.33], [0.33,0.25,-1,0.25,0,0] , [0,0.25,0.5,-1,0,0], [0,0.25,0.5,0.25,-1,0.33], [1,1,1,1,1,1]])
b = np.array([0,0,0,0,0,1])
x = np.linalg.solve(a, b)
print x
答案是:

[ 0.2644666   0.13780854  0.14895903  0.10893165  0.18669913  0.15313504]
如果你这样做

for i in range(6):
    (a[i]*x).sum()
您将得到前五个元素的顺序为e-17(在浮点表示中基本为0),最后一个元素是1,由您提供的
b
向量指定


我相信你的问题是不理解有关浮点运算的问题。有关详细信息,请参阅此文档。

请正确设置格式。谢谢。实际上,我不知道如何进行格式化。顺便问一下,谢谢你为什么说它不满足其他方程?我会说你错了。我把值放在了其他等式中,然后你做错了,或者解释错了。检查下面我的答案。