SymPy中的linsolve:结果不取决于变量



以下代码返回空集作为结果:

from sympy import *
a, x, y, z = symbols("a x y z")
linsolve([x-3, x-z-2, 2*x-2*z-a], [x,y,z])

然而,对于a=4,存在解决方案。有没有一种方法可以从SymPy获得取决于a值的答案?

由于a是系统的参数,而不是未知的linsolve将返回在";通用的";案例由于对于a的几乎所有可能值,都没有解决方案,因此您可以得到空集。如果将a包含为未知,则linsolve将找到其值,以及其他变量的一组解决方案:

In [8]: linsolve([x-3, x-z-2, 2*x-2*z-a], [x,y,z,a])
Out[8]: {(3, y, 1, 4)}

最新更新