Skip to main content
 首页 » 编程设计

python之求解具有四个变量的线性方程

2025年05月04日15myhome

问题:我需要用 Python 求解这些方程。

a + 3b + 2c + 2d = 1 
2a + b + c + 2d = 0 
3a + b + 2c + d = 1 
2a + c + 3d = 0 

所以我可以得到 a、b、c 和 d 的值。有没有办法让我用分数显示它们?

我的代码:

import numpy as np 
A = np.array([[1,3,2,2],[2,1,1,2]]) 
B = np.array([1,0,1,0]) 
X2 = np.linalg.solve(A,B) 

错误:

LinAlgError: Last 2 dimensions of the array must be square 

请您参考如下方法:

您没有将问题的最后两个方程添加到 A 矩阵:

import numpy as np 
A = np.array([[1,3,2,2],[2,1,1,2],[3,1,2,1],[2,0,1,3]]) 
B = np.array([1,0,1,0]) 
X2 = np.linalg.solve(A,B) 

给予:

array([-0.27272727, -0.18181818,  1.09090909, -0.18181818]) 

这应该有效。