我想知道我怎么能让表达能够表达,使得表达式按字面意思呈现并且不会发生任何伪造(在sqrt下4)
from sympy import init_session
init_session(quiet=true)
from sympy.interactive import printing
printing.init_printing(use_latex=True)
a=sqrt(4*A**2*Z**2)
a
给出
2 * sqrt(a**2*Z**2)
我宁愿把它写成最初写的(在教育文本的过程中)。那么如何防止同情者进行任何简化或解决?
答案 0 :(得分:2)
使用“evaluate(False)”块来停止简化/评估规则:
(我正在使用Python 3.4,同情0.7)
with evaluate(False):
print(sqrt(4*x))
sqrt(4*x)
>>>
答案 1 :(得分:1)
截至目前,没有办法用同情心做到这一点。它解析输入sqrt(4*A**2*Z**2)
并存储表达式树,按照它认为合适的方式对术语进行排序,将所有合理因素组合成一个,等等。没有关于原始输入的信息。
参考:Issue #3846: Allow manipulation of raw expression trees,于2008年开放。该问题似乎不会很快得到解决。