如何在python中解决以下简单的方程式系统?
x =(2/3)* y +(1/3)* 0
y =(2/3)* 1 +(1/3)* x
我尝试过SymPy,但无法弄清楚。
解决了方程部分
from sympy import *
from sympy.solvers.solveset import linsolve
x, y = symbols('x, y')
linsolve([x - 2/3*y, y - 2/3 - 1/3*x ], (x, y))
输出:{(0.571428571428571,0.857142857142857)}
类型为'sympy.sets.sets.FiniteSet'
如何仅提取x值设置为变量?
知道了。
z = linsolve([x - 2/3*y, y - 2/3 - 1/3*x ], (x, y))
print(z.args[0][0])
答案 0 :(得分:0)
使用numpy python模块
求解线性方程组的示例
情况1:
24a + 4b = 35
8a + 4b = 94
情况2:
a + b = 4
2a + b = 8
>>> import numpy as np
>>> a = np.array([[24, 4],[8,4]])
>>> b = np.array([35, 94])
>>> print(np.linalg.solve(a,b))
[-3.6875 30.875 ]
>>> a = np.array([[1, 1],[2,1]])
>>> b = np.array([4, 8])
>>> print(np.linalg.solve(a,b))
[4. 0.]