numpy.savetxt的分隔符

时间:2013-03-16 21:24:13

标签: python python-3.x file-io numpy

我正在尝试使用numpy.savetxt将numpy数组写入.txt文件。我可以说,以下代码遵循文档:

z = np.array([1,2,3])
np.savetxt('testdata.txt',z,delimiter='hi')

但是,使用记事本打开的输出文件显示

1.000000000000000000e+002.000000000000000000e+003.000000000000000000e+00

值之间没有分隔符hi。任何想法为什么会这样?我的目标是在每个值之间添加新行。

1 个答案:

答案 0 :(得分:8)

您需要2D数组,轴0是行,轴1是列。所以我使用z[None, :]将其转换为2D数组:

from StringIO import StringIO
s = StringIO()
z = np.array([1,2,3])
np.savetxt(s,z[None, :],delimiter='hi')
s.getvalue()

输出:

1.000000000000000000e+00hi2.000000000000000000e+00hi3.000000000000000000e+00\n