numpy数组打印到文件中,不需要包装

Jeo*_*eon 6 python numpy

我有很多冗长的向量,如下所示:

a = np.array([ 57.78307975,  80.69239616,  80.9268784,   62.03157284,  61.57220483,  67.99433377,  68.18790282])
Run Code Online (Sandbox Code Playgroud)

当我将其打印到文件中时:

outfile.write(str(a))
# or
outfile.write(np.array_str(a))
Run Code Online (Sandbox Code Playgroud)

它自动包裹一行的中间,它使向量占用两行:

[ 57.78307975  80.69239616  80.9268784   62.03157284  61.57220483
  67.99433377  68.18790282]
Run Code Online (Sandbox Code Playgroud)

包装线的宽度为66.我不确定该值是否与终端屏幕的宽度有关.

我只是想看一个矢量打印成一行.我该怎么做?

wim*_*wim 9

这应该以便宜的方式解决它:

outfile.write(str(a).replace('\n', ''))
Run Code Online (Sandbox Code Playgroud)

或者你可以使用

np.array2string(a, max_line_width=np.inf)
Run Code Online (Sandbox Code Playgroud)

至于你的"为什么"评论,请查看np.set_printoptions(和get_printoptions),特别是'linewidth'配置值.您可以通过更改该值来保持行为.