4

我正在尝试使用将 100x6 numpy 数组写入数据文件

# print  array to file
data = open("store.dat", "w")
for j in xrange(len(array)):
    data.write(str(array[i]) + "\n")

但是当文件写入时,它会在 68 个字符后自动拆分行,即 6 列数组的 5 列。例如,我想看看

[ 35.47842918  21.82382715   3.18277209   0.38992263   1.17862342   0.46170848]

作为其中一条线,但我得到了

[ 35.47842918  21.82382715   3.18277209   0.38992263   1.17862342
0.46170848]

我已经把它缩小到一个问题,str(array[i])它决定让自己成为一条新线。

其次,有没有更好的方法来解决这个问题?我对python很陌生,对正确编码知之甚少。最终,我正在编写一个星星的模拟,以便稍后由一个将在 VPython 中呈现坐标的模块读取。我想,为了避免实时渲染的问题,我可以在模拟完成后传递一个文件。这是低效的吗?我应该传递一个对象吗?

谢谢

4

1 回答 1

7

也许用它来编写它会更方便numpy.save

或者,您也可以使用:

numpy.array_str(array[i], max_line_width=1000000)
于 2013-06-29T21:35:06.193 回答