如何在预定义方程中为变量赋新值?
对于预定义的方程式,给变量赋新值并不会改变方程的结果。那我该怎么给变量赋新值,才能得到方程的正确结果,而不是之前的结果呢?
a,b,c,d,e,f=sympy.symbols('abcdef')
a,b=c,d
e=a+b #equation
print e
c+d #value of eqn
a,b=d,f
print e
c+d #not d+f
1 个回答
5
也许可以使用替换,而不是直接用等号:
import sympy
a,b,c,d,e,f=sympy.symbols('abcdef')
e=a+b #equation
print e.subs([(a,c),(b,d)])
# c + d
print e.subs([(a,d),(b,f)])
# d + f