python将列表写入新行,zip,

时间:2013-06-21 12:05:59

标签: python numpy zip

我的代码将我的数据写入文件,我刚刚介绍了zip函数,所以现在我的所有代码都按照正确的顺序排列,但它们都在同一行,并且' \ n'在每次a之后,部分人员都没有将它放在一个新的线上。我将如何写入数据文件,以便每个列表都在一个新行中?

   noop=np.arange(1,2)
    for kil in noop:
            if kil < 10:
                kil = '0'+str(kil)
            else:
                kil = str(kil)
        datafile2=open(str(kil)+'tempppa.txt', 'w')
        e1=np.genfromtxt(str(kil)+'_temp.txt').T[0] 
        meane1=np.mean(e1)
        e2=np.genfromtxt(str(kil)+'_temp.txt').T[1] 
        meane2=np.mean(e2)
        E1=e1-meane1
        E2=e1-meane2
        phi=np.arctan2(E2,E1)
        a=[E1,E2, phi]  
        a=zip(*a)
        datafile2.write(str(a)+' \n')
        datafile2.close()

1 个答案:

答案 0 :(得分:1)

zip返回一个列表。列表中的str将全部放在同一行。也许是这样的:

datafile2.writelines(str(x)+'\n' for x in a)

会做你想要的。或者,您可以str.join列表并写下结果:

datafile2.write('\n'.join(map(str,a)))