首页 > 解决方案 > 降低sympy中忽略特定字符串的权力顺序

问题描述

我正在为我的学生做数学测验。

我们如何在忽略 sympy 中的特定字符串的情况下按幂的降序排列关于 x 的多项式?

我想将符号“a”视为常数,并希望对符号“x”的幂进行降序排序,换句话说,我想忽略“a”来排序。我不知道要实现它。

我的最低代码如下:

import sympy
from sympy.abc import x

sympy.init_printing(order='lex')

a = sympy.Symbol('a')
f = sympy.Function('f')
g = sympy.Function('g')
h = sympy.Function('h')

f = 4*x + 1
g = x**2 + a*x + a**2
h = 4*x + a

sympy.latex(f)
sympy.latex(g)
sympy.latex(h)

当我运行上面的代码时,Sympy 返回如下:

4 x + 1
a^2 + a x + x^2
a + 4 x.

但是,我希望得到以下结果;

4 x + 1
x^2 + a x + a^2
4 x + a.

Sympy 似乎将“a”和“x”都识别为符号,并且似乎按字母顺序排列。

我必须如何修复我的代码才能获得预期的结果?

标签: pythonpython-3.xmathsympypolynomials

解决方案


推荐阅读