sympy访问和使用求解器数据

时间:2014-03-21 19:12:07

标签: python sympy

我刚开始使用SymPy,我有一个非常基本的问题:如何访问和使用获得的解决方案中的数据?下面我附上一个可能的问题。我想将结果“5.725”和“0.725”用作其他操作的数据。我尝试通过给出一个解决操作的名称来访问它,例如a = solve ...然后访问一个[0]和一个[1],好像它是一个列表,但它似乎不起作用。任何线索?提前致谢!

F=[-6.45,0,0] 
F1=[x,0,0]
F2=[y,0,0]
M=[0,0,10]
d1_F1=[0,0,-2*F1[0]]
d2_F2=[0,0,2*F2[0]]

solve([Matrix(F)+Matrix(F1)+Matrix(F2),Matrix(M)+Matrix(d1_F1)+Matrix(d2_F2)],[x,y])

{x:5.725,y:0.725}

1 个答案:

答案 0 :(得分:1)

您将solve的结果作为字典返回。您可以使用变量作为索引来访问数字。例如:

>>> sol = solve([Matrix(F)+Matrix(F1)+Matrix(F2),Matrix(M)+Matrix(d1_F1)+Matrix(d2_F2)],[x,y])
>>> sol
{x: 5.72500000000000, y: 0.725000000000000}
>>> sol[x]
5.72500000000000
>>> sol[y]
0.725000000000000

您可能需要查看Python教程的dictionary部分。