Python 如何组合指数?(x**a)**b=>;x**(a*b)?
如何简化辛方程中的指数Python 如何组合指数?(x**a)**b=>;x**(a*b)?,python,simplify,sympy,exponent,Python,Simplify,Sympy,Exponent,如何简化辛方程中的指数 from sympy import symbols a,b,c,d,e,f=symbols('abcdef') j=(a**b**5)**(b**10) print j (a**(b**5))**(b**10) #ans even after using expand simplify # desired output a**(b**15) 如果Symphy不可能,我应该在python中导入哪个模块 编辑 即使我把“b”定义为真的,还有所有其他符号 b=符号('
from sympy import symbols
a,b,c,d,e,f=symbols('abcdef')
j=(a**b**5)**(b**10)
print j
(a**(b**5))**(b**10) #ans even after using expand simplify
# desired output
a**(b**15)
如果Symphy不可能,我应该在python中导入哪个模块
编辑
即使我把“b”定义为真的,还有所有其他符号
b=符号('b',实=真)
没有得到简化的指数
只有当指数为常数时,它才会简化
a=symbols('a',real=True)
b=symbols('b',real=True)
(a**5)**10
a**50 #simplifies only if exp are numbers
(a**b**5)**b**10
(a**(b**5))**b**10 #no simplification
这可能与。(xm)n=xmn为真有关
好吧,所以我认为这种简化不应该做,除非你能证明b
是真实的
编辑:如果x不是正的,则也是假的
>>> x = -2
>>> m = 2
>>> n = 0.5
>>> (x**m)**n
2.0
>>> x**(m*n)
-2.0
编辑(gnibbler):下面是应用Kenny限制的原始示例
>>> from sympy import symbols
>>> a,b=symbols('ab', real=True, positive=True)
>>> j=(a**b**5)**(b**10)
>>> print j
a**(b**15)
回答得很好,但是
a,b,c,d,e,f=symbols(“abcdef”,real=True)”的输出是相同的@gnib:Oops看起来我错过了另一个限制(x>0)。thanx!肯尼和gnib,如果我们定义符号,它会起作用;a=符号('a',实=真,正=真)
>>> from sympy import symbols
>>> a,b=symbols('ab', real=True, positive=True)
>>> j=(a**b**5)**(b**10)
>>> print j
a**(b**15)
a,b,c=symbols('abc',real=True,positive=True)
(a**b**5)**b**10
a**(b**15)#ans