You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在SymPy中将多项式的因式存储为列表?

提取SymPy多项式不可约因式为列表

针对多项式x^6 - 1的因式分解需求,你可以通过以下两种简单方法提取不可约因式并存储为列表:

方法1:利用factor_list()提取

factor_list()返回的结构是(首项系数, [(因式1, 指数1), (因式2, 指数2), ...]),只需遍历第二个元素中的元组,取出每个元组的第一个元素(即因式本身)即可:

from sympy import Symbol, factor_list

x = Symbol('x')
p = x**6 - 1
factor_tuple = factor_list(p)
irreducible_factors = [fac for fac, exp in factor_tuple[1]]

# 输出结果:[x - 1, x + 1, x**2 + x + 1, x**2 - x + 1]
print(irreducible_factors)

方法2:通过factor()的.args属性获取

factor()返回的是因式相乘的表达式,调用其.args属性会得到所有相乘因子组成的元组,直接转成列表即可:

from sympy import Symbol, factor

x = Symbol('x')
p = x**6 - 1
factored_expr = factor(p)
irreducible_factors = list(factored_expr.args)

# 输出结果:[x - 1, x + 1, x**2 + x + 1, x**2 - x + 1]
print(irreducible_factors)

内容的提问来源于stack exchange,提问作者Jos

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.02 14:15:25