我有一个表达式:1/(x+1)+4*x/(x-1)+3-4*x**2+10*x**2
我需要的是包含此表达式中的术语的列表。
即 [1/(x+1), 4*x/(x-1), 3, -4*x**2, 10*x**2]
更新:它不应该收集相似的术语。因此,在收集类似的术语后,列表应该分别有 -4*x** 2 和 10*x** 2 而不是 6*x**2 。
最佳答案
正确的做法是Add.make_args
。这与 Bjoern 的回答中的 expr.args
相同,除非表达式不是 Add
(单个术语),它仍然给出该术语,而不是遍历进入那个表情。
In [20]: expr = 1/(x+1)+4*x/(x-1)+3-4*x**2
In [21]: print(Add.make_args(expr))
(3, 1/(x + 1), -4*x**2, 4*x/(x - 1))
关于python - 如何在 Sympy 中查找表达式中的所有术语,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37566132/