You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何指定Sympy.pretty_print的打印输出精度?

以下是几种仅控制SymPy打印输出精度、不修改数值本身存储精度的实现方法:

方法1:数值转换时指定精度

sp.N()和evalf()方法均支持传入第二个参数指定有效数字位数,仅对本次转换输出生效:

import sympy as sp
sp.init_printing()

a = sp.pi
# 输出4位有效数字
sp.pprint(sp.N(a, 4)) 
# 等价写法,使用evalf方法
sp.pprint(a.evalf(4))

上述代码运行后将输出3.142。

方法2:全局配置默认打印精度

如果希望所有打印操作默认使用统一精度,可以在init_printing方法中指定precision参数,该参数仅控制显示逻辑,不会修改数值存储规则:

import sympy as sp
# 全局设置默认打印精度为3位有效数字
sp.init_printing(precision=3)

a = sp.pi
sp.pprint(sp.N(a)) # 自动输出3位有效数字3.14

方法3:单次打印临时指定精度

不需要修改全局配置时,也可以在调用pprint时临时传入precision参数,仅对本次打印生效:

import sympy as sp
sp.init_printing()

a = sp.pi
# 单次打印指定5位有效数字
sp.pprint(sp.N(a), precision=5) # 输出3.1416

内容的提问来源于stack exchange,提问作者Tarnarmour

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 17:57:05