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

如何将float类型numpy数组转换为int类型并保存为纯整数文本?

实现纯整数输出的修改方法

问题原因

原有代码输出科学计数法浮点数有两个核心原因:

  • 对float类型数组做四舍五入、求和操作后,输出结果仍然是float类型
  • np.savetxt默认使用浮点格式输出,数值范围符合触发条件时就会自动转为科学计数法

解决方案

方案1:提前转换数组类型+指定存储格式(推荐,兼容性更好)

先将求和后的float数组转为int类型,存储时指定整数格式:

npW_x = np.array(my_np_array)
npW_round_111 = np.around(npW_x, decimals=0)
sum_x_111 = np.sum(npW_round_111, axis=1)
# 转换为int类型,自动适配四舍五入后的结果
sum_x_111_int = sum_x_111.astype(np.int32)
# fmt参数指定为%d,代表输出整数格式
np.savetxt("file1.txt", sum_x_111_int, fmt="%d")

方案2:直接在存储时指定格式(更简洁)

不需要提前转换数组类型,直接通过fmt参数强制输出整数,np.savetxt会自动做类型转换:

npW_x = np.array(my_np_array)
npW_round_111 = np.around(npW_x, decimals=0)
sum_x_111 = np.sum(npW_round_111, axis=1)
np.savetxt("file1.txt", sum_x_111, fmt="%d")

补充说明

  • 如果需要调整整数输出样式,比如固定宽度、补前导零,可以修改fmt参数,例如fmt="%04d"会输出4位宽度的整数,不足位数前面补0
  • 如果不需要四舍五入,而是要向下取整/向上取整,可以把np.around替换为np.floor或np.ceil即可

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 05:57:04