猿问

过滤三角 SymPy 表达式的项,保留那些具有给定系数的项

让我们假设我们有一个表达式:

x*sin(y) + y*cos(x) + x*cos(z)

从上面的表达式,我想获得一个新的多项式,只有系数为 x 的项,即:

     x*sin(y) + x*cos(z)

或者

  x*(sin(y) + cos(z))

显然,设置 y=0 不是解决方案,因为 x*sin(y) 将变为 0。如何过滤 SymPy 中多项式的项以仅选择具有某些给定系数的项?


跃然一笑
浏览 103回答 2
2回答

泛舟湖上清波郎朗

我想你正在寻找collect.collect(x*sin(y) + x*cos(z) + y*cos(x), x, evaluate=False)将返回{x: sin(y) + cos(z), 1: y*cos(x)}
随时随地看视频慕课网APP

相关分类

Python
我要回答