Python savetxt 以整数写入

1 投票
1 回答
4110 浏览
提问于 2025-04-18 03:32

我想把一个数组写入到一个文本文件里,并且希望每个元素都以 int 类型的形式写入。

我使用了

np.savetxt(outfile_name, array, comments = '')

来写这个文件。我把 arrayfloat 类型转换成了 int 类型,使用的是

array = array.astype(int)

当我在程序中打印 array 时,数组显示的是 int 类型,但当我把它写入文本文件时,文件的内容看起来是:

0.000000000000000000e+00 1.000000000000000000e+00 1.000000000000000000e+00 1.000000000000000000e+00 1.000000000000000000e+00
1.000000000000000000e+00 1.000000000000000000e+00 0.000000000000000000e+00 1.000000000000000000e+00 1.000000000000000000e+00
1.000000000000000000e+00 1.000000000000000000e+00 1.000000000000000000e+00 1.000000000000000000e+00 0.000000000000000000e+00
1.000000000000000000e+00 1.000000000000000000e+00 1.000000000000000000e+00 0.000000000000000000e+00 1.000000000000000000e+00
1.000000000000000000e+00 1.000000000000000000e+00 0.000000000000000000e+00 0.000000000000000000e+00 0.000000000000000000e+00

1 个回答

9

你有没有试过按照文档来指定一个格式呢?

np.savetxt(outfile_name, array, fmt="%d", comments='')
                              # ^ format as signed decimal integer

这使用了标准的格式说明小语言

撰写回答