from sympy import *
var('x a b')
f=a*(2*x**2 - 1) + 4*x**3 + x*(b - 3)
#次の行不要です。
#f=collect(expand(f),x)
print("#f=#" ,f)
print("#3次#" ,f.coeff(x**3))
print("#2次#" ,f.coeff(x**2))
print("#1次#" ,f.coeff(x**1))
print("#0次#" ,f.coeff(x**0))
#f=# a*(2*x**2 - 1) + 4*x**3 + x*(b - 3)
#3次# 4
#2次# 0
#1次# b - 3
#0次# a*(2*x**2 - 1) + x*(b - 3)

0次はaになりません。いい方法がありますか?
よろしくお願いします。