问题描述
因为我想简化平方根,所以我遇到了这个解决方法:
${user.Url}
但是它太慢了,我认为这不是最合适的方法 那么有没有其他方法可以处理平方根并简化它们 - 自动 -
解决方法
SymPy 自动将有理参数简化为 sqrt
,但可以以不明确有理的方式编写有理数(如您之前的帖子所述):
>>> eq
sqrt((-9/10 + 6*sqrt(3)/5)**2 + (6/5 + 9*sqrt(3)/10)**2)
sqrt
只会简化显式的 Rational 参数。论证基础的扩展表明它是一个 Rational,sqrt
将简化它:
>>> eq.base.expand()
9
>>> sqrt(9) == 3
True
在需要展平涉及幂的表达式的情况下,比 expand
更好的是 _mexpand
函数:
>>> from sympy.core.function import _mexpand as flat
>>> flat(eq)
3