SymPy - 替换


对数学表达式执行的最基本运算之一是替换。SymPy 中的 subs() 函数将所有出现的第一个参数替换为第二个参数。

>>> from sympy.abc import x,a 
>>> expr=sin(x)*sin(x)+cos(x)*cos(x) 
>>> expr

上面的代码片段给出了相当于下面表达式的输出 -

$\sin^2(x)+\cos^2(x)$

>>> expr.subs(x,a)

上面的代码片段给出了相当于下面表达式的输出 -

$\sin^2(a)+\cos^2(a)$

如果我们想要计算某个表达式,这个函数非常有用。例如,我们想通过将 a 替换为 5 来计算以下表达式的值。

>>> expr=a*a+2*a+5 
>>> expr

上面的代码片段给出了相当于下面表达式的输出 -

$a^2 + 2a + 5$

expr.subs(a,5)

上面的代码片段给出了以下输出 -

40

>>> from sympy.abc import x 
>>> from sympy import sin, pi 
>>> expr=sin(x) 
>>> expr1=expr.subs(x,pi) 
>>> expr1

上面的代码片段给出了以下输出 -

0

此函数还用于将一个子表达式替换为另一个子表达式。在下面的示例中,b 被替换为 a+b。

>>> from sympy.abc import a,b 
>>> expr=(a+b)**2 
>>> expr1=expr.subs(b,a+b) 
>>> expr1

上面的代码片段给出了相当于下面表达式的输出 -

$(2a + b)^2$