SymPy - Замена
Одна из самых основных операций, выполняемых с математическим выражением, - это подстановка. Функция subs () в SymPy заменяет все вхождения первого параметра вторым.
>>> 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$