如何根据递增程度单变量情况对多项式表达式sympy,python中的项进行排序?

问题描述

sympy (python) 中,似乎认情况下,单变量多项式中的项是根据递减度数排序的:首先是最高度数,然后是最高度数,依此类推。所以,例如,多项式像

x + 1 + x^3 + 3x^6

将打印为 3x^6 + x^3 + x + 1。

我想反转 sympy 中多项式项的顺序,以增加的度数。对于同一示例,打印输出应为 1 + x + x^3 + 3x^6。首选在程序前导中全局更改某些参数的解决方案,但也欢迎其他选项。


这是一个可以玩的 MWE。它与我正在使用的实际程序不同。实际程序的一部分(不是 MWE)是打印出一系列递归定义的多项式,例如 P_n(x) = P_(n-1)(x) + a_n * x^n。当它们按程度递增排序时,我更容易比较它们。这是改变顺序的动机;在全球范围内这样做可能只会使代码更具可读性(美观)。但是 MWE 只是针对上面示例中给出的相同简单多项式。

import sympy as sym
from sympy import *

x = sym.Symbol('x')
polynomial = x + 1 + x**3 + 3*x**6
print(polynomial)

MWE 的输出

>>> 3*x**6 + x**3 + x + 1

所需的 MWE 输出

>>> 1 + x + x**3 + 3*x**6

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)