将数组保存在循环中

时间:2015-03-08 19:25:45

标签: python arrays loops output

我在循环中更新了一个数组(popt),我希望将其保存在文件中。

for k in range (1:N):
    # here I make "popt" array which is depend on k
    np.savetxt('test.out',popt)

由于覆盖问题,仅保存最后更新的popt。如何保存此数组的所有数据,而不仅仅是最后一个数据?

for k in range (1:N)
    # here I make "popt" array which is depend on k
    np.savetxt('test.out',popt)

3 个答案:

答案 0 :(得分:0)

您直接指定 savetxt()功能的文件。我手动打开文件并传递文件句柄;通过这种方式,您可以告诉Python附加到该文件。

with open('test.out','a') as f_handle:
    np.savetxt(f_handle, popt)

答案 1 :(得分:0)

如果您只想将矩阵添加到现有的ASCII文件中,则可以 以附加模式打开此文件并将文件句柄赋予 numpy.savetxt:

f_handle = file('test.out', 'a')
np.savetxt(f_handle, popt)
f_handle.close()

答案 2 :(得分:0)

或者更确切地说,如果您打算在处理循环后保存文件一次,请将np.savetext()命令移出循环 - 将其缩进一次。这甚至可能是错误的。