如何使用 SymPy 求解方程中的二次项

How to solve for a second degree term in an equation with SymPy

我的等式是 ax = ln(ec-b/y)
我如何找到 python 中的 x*y 等于什么?我试过使用 SymPy.solve,但它不允许我求解一个术语。提前致谢。

如果你求解 y = f(x),那么 y*x = x*f(x)。所以 SymPy 中的这两个步骤是:

>>> from sympy.abc import a,b,c,x,y
>>> from sympy import solve, Eq
>>> solve(Eq(a*x , ln(exp(c-b)/y)),y)
[exp(-a*x - b + c)]
>>> _[0]*x # == y*x
x*exp(-a*x - b + c)

可以 求解任何子表达式,但是当它不是符号时,它将按字面解释,就好像您在替换子表达式后求解 u表达式 u:

>>> solve(x*y - 1/x, x*y)
[1/x]

在你的表达式中没有 x*y 所以这就是为什么试图天真地解决它失败的原因。