SymPy - evalf() 函数



此函数会评估一个给定的数字表达式到最高 100 位有效数字的给定浮点数精度。该函数还采用一个数值词典对象作为符号数值的 subs 参数。考虑以下表达式

>>> from sympy.abc import r 
>>> expr=pi*r**2 
>>> expr

以上代码片段给出的输出等同于以下表达式 −

$\Pi{r^2}$

要通过使用 evalf() 函数评估以上表达式,可将 r 代入 5

>>> expr.evalf(subs={r:5})

以上代码片段给出了以下输出 −

78.5398163397448

默认情况下,浮点数精度最高 15 位,可通过最高 100 的任何数字覆盖。以下表达式评估时精度最高可达 20 位。

>>> expr=a/b 
>>> expr.evalf(20, subs={a:100, b:3})

以上代码片段给出了以下输出 −

33.333333333333333333

广告