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

Python round函数舍入异常:保留2位小数仅显示1位

解决Jupyter Notebook中舍入后小数末尾零不显示的问题

这是因为Python默认的数值显示会自动省略小数部分末尾的零(毕竟64.1和64.10在数值上等价),但如果需要强制显示指定位数的小数,可以用以下几种方法:

方法1:使用f-string格式化输出

这是Python 3.6+最简洁的方式,直接在输出时指定小数位数:

num = 64.10343
rounded_num = round(num, 2)
print(f"{rounded_num:.2f}")
# 输出:64.10

方法2:使用format()函数

兼容性更广,原理和f-string一致:

num = 64.10343
rounded_num = round(num, 2)
print("{:.2f}".format(rounded_num))
# 输出:64.10

方法3:合并舍入与格式化一步完成

不需要单独执行round(),直接通过格式化完成舍入并显示:

num = 64.10343
print(f"{num:.2f}")
# 输出:64.10

方法4:处理pandas数据框时的设置

如果在Jupyter中用pandas展示数据,需要配置列的显示格式:

import pandas as pd
df = pd.DataFrame({"value": [64.10343]})
df["value"] = df["value"].round(2)
pd.options.display.float_format = '{:.2f}'.format
print(df)
# 输出的value列会显示64.10

注意:这些方法都是调整显示格式,数值本身在舍入后已经是两位小数精度,只是默认显示省略了末尾的零。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.23 09:39:26