将数组列表放入.txt文件中,不带括号,并且间隔良好



我正试图将数组列表的.txt文件保存如下:

list_array =

[array([-20.10400009,  -9.94099998, -27.10300064]),
array([-20.42099953,  -9.91499996, -27.07099915]),

...

这是我引用的那句话。

np.savetxt('path/file.txt', list_array, fmt='%s')

这就是我得到的

[-20.10400009  -9.94099998 -27.10300064]
[-20.42099953  -9.91499996 -27.07099915]

...

这就是我想要的

-20.10400009 -9.94099998 -27.10300064
-20.42099953 -9.91499996 -27.07099915

...

编辑:

它是从Matlab中翻译过来的,如下所示。附加到转换

Cell([array([[[-20.10400009,  -9.94099998, -27.10300064]]]),
array([[[-20.42099953,  -9.91499996, -27.07099915]]]),
array([[[-20.11199951,  -9.88199997, -27.16399956]]]),
array([[[-19.99500084, -10.0539999 , -27.13899994]]]),
array([[[-20.4109993 ,  -9.87100029, -27.12800026]]])],
dtype=object)

我真的看不出你的代码有什么问题,除了缺少导入。对于array,你的意思是numpy.array,还是像from numpy import array一样导入(你应该避免这样做(?

运行此示例可以得到您想要的结果。

import numpy as np
list_array = [np.array([-20.10400009,  -9.94099998, -27.10300064]),
np.array([-20.42099953,  -9.91499996, -27.07099915])]
np.savetxt('test.txt', list_array, fmt='%s')
> cat test.txt
-20.10400009 -9.94099998 -27.10300064
-20.42099953 -9.91499996 -27.07099915