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

如何使用SymPy将a**(x+y)展开为a**x与a**y的乘积?

使用SymPy展开a**(x+y)为a**x * a**y的方法

SymPy默认会将a^(x+y)保留为紧凑形式,若要强制展开为幂的乘积,有两种直接方法:

方法1:使用expand_power_exp函数

这个函数专门用于将指数的和展开为幂的乘积,代码示例:

from sympy import symbols, expand_power_exp

# 定义符号变量
a, x, y = symbols('a x y')
# 原始表达式
expr = a**(x + y)
# 展开表达式
expanded_expr = expand_power_exp(expr)
# 输出结果:a**x*a**y
print(expanded_expr)

方法2:使用expand()并指定power_exp=True参数

通过expand函数的参数指定展开指数规则,同样能实现需求:

from sympy import symbols, expand

a, x, y = symbols('a x y')
expr = a**(x + y)
# 传入power_exp=True触发指数展开
expanded_expr = expand(expr, power_exp=True)
print(expanded_expr)

注意事项

如果a有特定属性(比如正数),可以在定义符号时添加假设,避免展开后出现歧义:

a = symbols('a', positive=True)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.03 13:53:12