繁体   English   中英

我想使用python在文件中存储多个2D数组

[英]I want to store more than one 2d arrays in file using python

我正在使用python 2.7。 我尝试将2d数组存储在文件中,但仅存储了最近的值。 假设如果我为3行的4行2列的数组输入值,那么它只存储我为最后一个数组输入的最近的单个值。 我用numpy来获取数组的输入。 我尝试了这段代码:

import numpy as np
from math import *

def main ():
    i_p = input("\n Enter number of input patterns:")
    out = raw_input("\n Enter number of output nodes:")
    hidden = raw_input("\n Enter number of hidden layers:")
    print 'Patterns:'
    for p in range(0,i_p):
        print "z[%d]"%p

        rows=input("Enter no of rows:")
        cols=input("Enter no of coloumns:")
        ff=open('array.txt','w')
        for r in range(0,rows):
            for c in range(0,cols):
                z=np.matrix(input())
                ff.write(z)
                np.savetxt('array.txt',z)



if __name__=="__main__":
    main()

你的

np.savetxt('array.txt',z)

打开文件进行全新写入; 因此它会销毁之前写入该文件的所有内容。

尝试:

ff=open('array.txt','w')
for i in range(3):
    z = np.ones((3,5))*i
    np.savetxt(ff,z)

这应该写9行,共5列

我本来要适应你的:

  for r in range(0,rows):
      for c in range(0,cols):
          z=np.matrix(input())
          np.savetxt...

但这没有道理。 您不要通过savetxt 'column'来savetxt

转到Python解释器,创建一个简单数组(不是np.matrix ),然后保存它。 制作几个数组并保存。 查看您保存的内容。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM