python,将数据保存到循环文件中

时间:2014-10-15 12:41:59

标签: python arrays

我想将循环中的数组保存到一个文件中,而不是

x = np.array([1,2,3,4,5])
y = np.array([7,6,5,2,1])
np.savetxt('out.txt', np.array([x,y]))

我希望能够在循环中添加数组:

for i in range(0,2):
    x[i] = np.array([1,2,3,8,3])
    np.savetxt('out.txt', x[i])

并且不要覆盖以前的数组。 除了我可以使用的savetxt之外还有什么吗?

2 个答案:

答案 0 :(得分:1)

np.savez()仅针对此:http://docs.scipy.org/doc/numpy/reference/generated/numpy.savez.html#numpy.savez

它不仅可以让您将多个数组保存在一个文件中,即使它们具有不同的列等,它也会更加高效和紧凑。

答案 1 :(得分:1)

如果要保存为纯文本,可以执行以下操作:

with open('out.txt', 'a') as f:
    for i in range(0,2):
        x[i] = np.array([1,2,3,8,3])
        np.savetxt(f, x[i])

请注意' a'为了'追加'。