如何在 SymPy 中获取表达式的系数列表?

How to get a list of coefficients of an expression in SymPy?

假设我在 SymPy 中有这样的表达式:

s = sp.symbols('s')
Y = s**3 + 3*s**2 + 2*s
Y

现在我想得到那个表达式的“订单列表”。 这是我想要实现的示例: 我想创建一个 tf() 对象。其中 tf() 是一个类似于 Matlab 的函数,它接受两个列表、一个分母和一个分子,并从中创建一个传递函数:

tf([1], [1, 3, 2, 0])

我想从我的 SymPy 表达式中提取这两个列表,以便像在 tf() 函数中一样使用它们。我该怎么做?

将表达式转换为多项式后 all_coeffs() 执行以下操作:

sp.Poly(s**3 + 3*s**2 + 2*s, s).all_coeffs()
[1, 3, 2, 0]