如何求解 Python 中的指数方程

How to solve an exponential equation in Python

现在我有一个方程要解:

exp(x * a)-exp(x * b) = c,其中 a、b 和 c 是已知常数。

我尝试了 sympy 和 scipy.optimize.fsolve,甚至是 brenth 和 newton。没什么好的。我是 python 的新手,大约 2 周。所以请帮我解决这个问题。谢谢!

目前还不清楚您真正想要的是什么。符号优化与数值优化以及精确解与最小二乘解。

忽略这个,只介绍最小二乘法:

from scipy.optimize import minimize_scalar
import math

a = 3
b = 2
c = 1

def func(x):
    return (math.exp(x * a) - math.exp(x * b) - c)**2

res = minimize_scalar(func)
print(res.x)
print(res.fun)

输出:

0.382245085908
1.2143546318937163e-19

替代示例:

a = 5
b = 2
c = -1

输出:

-0.305430244172
0.4546398791780655

这只是关于 scipy.optimize 的演示。这可能终究不是你想要的。