以下代码将类似的术语放在一起。但是,对于大量的术语,将所有类似的术语加起来可能会变得更加困难。如果没有我目前正在使用的乏味方法,关于如何实现此目标的任何建议。
import sympy as sp
from sympy import *
import numpy as np
from numpy.linalg import *
x,y,a,b,c,d=sp.symbols('x,y,a,b,c,d')
A=a*x + b*y
B=c*x+d*y
A1=A.coeff(x)
B1=B.coeff(x) #segregating the coefficients
A2=A.coeff(y)
B2=B.coeff(y)
A_new=(A1+B1)*x + (A2+B2)*y
print A_new
输出是
x*(a + c) + y*(b + d)
最佳答案
import sympy as sp
x,y,a,b,c,d=sp.symbols('x,y,a,b,c,d')
A = a*x + b*y
B = c*x+d*y
sum_expr = A+B
sum_expr.collect((x,y)) # output: x*(a + c) + y*(b + d)
它也是用the tutorial编写的。
关于python - 使用sympy将类似的术语放在一起,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26929405/