打印替换表达式而不进行数值计算

2024-03-09

是否可以打印替代 SymPy 表达式而不进行计算?我想打印替换的表达和结果。

e.g.

x = Symbol('x')
expr = x**2
pprint(expr) # this prints expression
result = expr.subs({x:2}) 
print(result) # this print result 4

我怎样才能打印“中间结果”,表达式2**2?


你可以传入UnevaluatedExpr为此,如下图所示:

result = expr.subs(x, UnevaluatedExpr(2))
print(result)   # prints 2**2 
result = result.doit()
print(result)   # prints 4

文档:防止表达式求值 http://docs.sympy.org/latest/tutorial/manipulation.html#prevent-expression-evaluation

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

打印替换表达式而不进行数值计算 的相关文章

随机推荐