如何使用 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
所以这就是为什么试图天真地解决它失败的原因。
我的等式是 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
所以这就是为什么试图天真地解决它失败的原因。