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