我设置 evaluate=False,购买 SymPy 的 parse_expr 仍然计算表达式

I set evaluate=False, buy SymPy's parse_expr still evaluates the expression

我试图不计算表达式,但它正在 无论如何评价。

这个: parse_expr("sqrt(I**2)", evaluate=False)

Returns 这个: i

为什么会这样?有办法改变吗?

与其依赖标志,不如尝试在上下文中解析字符串:

>>> from sympy.core.parameters import evaluate
>>> with evaluate(0):
...  parse_expr('sqrt(I**2)')
...
sqrt(I**2)
>>> _.args
(I**2, 1/2)