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

如何阻止Numpy将数组中的小数四舍五入为0并保留3位小数

问题原因

你在初始化数组b时使用了全整数的0列表,Numpy会自动将b的dtype设置为整数类型,所有浮点数值存入该数组时都会被强制截断为整数,小于1的正数自然就变成了0,和四舍五入、打印设置都没有关系。

解决方法

  • 修改b的初始化代码,直接指定浮点类型,推荐直接用np.zeros创建目标形状的浮点数组,写法更简洁:
# 替换原有的b初始化代码
b = np.zeros((300, 15), dtype=np.float64)
  • 优化建议:不需要写嵌套for循环做逐元素计算,直接利用Numpy的广播特性一行就能完成计算,执行效率高很多:
b = lb + a * intervals
  • 如果需要统一保留3位小数,计算完成后调用np.around即可:
b = np.around(b, 3)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.15 17:15:06