Sympy 用动态选择的变量求解方程

Sympy solving equations with dynamically chosen variables

我这样使用solve()

a = Symbol("a")
sol = solve(a + 2)

sol 的值为:[-2]

问题是我需要知道哪个变量与解决方案相关。

另一方面,这段代码给出了变量名:

a = Symbol("a")
b = Symbol("b")
sol = solve(a + b)

sol 的值为:{a:-b}

让第一个结果成为 {a:-2} 形式或包含变量和解决方案的任何形式的最佳方法是什么?

选项 dict=True 将强制使用字典返回解决方案,该字典标识为其找到解决方案的变量:

>>> a = Symbol("a")
>>> solve(a + 2)
[-2]
>>> solve(a + 2, dict=True)
[{a: -2}]