的Python:拆分numpy的阵列

问题描述:

我具有由numpy的产生的阵列,其看起来如下:的Python:拆分numpy的阵列

[54.51399994 -12.10200024 -11.88099957]
[56.23899841 -8.30799961 -2.03500009]

如何我把它转换成一个列表?因此,它看起来如下:

['54 0.51399994' , ' - 12.10200024', ' - 11.88099957']
[1956 0.23899841' , ' - 8.30799961', ' - 2.03500009']

+0

为什么哟你在第二个引用?你想从数字转换为字符串? – yosukesabai

+0

是的,因为我要将其写入文本文件 – Harpal

+5

如果您要将数组转储到文件,请使用[np.savetxt](http://docs.scipy.org/doc/numpy/reference/生成/ numpy.savetxt.html#numpy.savetxt)。你不需要自己做这个转换! – unutbu

你可以使用astype()创建的字符串D型细胞的一个新的数组:

import numpy as np 
arr=np.array([ 
    (54.51399994, -12.10200024, -11.88099957), 
    (56.23899841, -8.30799961, -2.03500009)]) 
print(arr.astype('|S10')) 

产生

[['54.51399994', '-12.10200024', '-11.88099957'], ['56.23899841', '-8.30799961', '-2.03500009']] 
+0

我的阵列中没有逗号。代码是否仍然有效? – Harpal

+0

当您打印一个numpy数组时,它很好地格式化没有逗号的数组。当你用'np.array'定义数组时,你必须使用逗号分隔元组中的项目。所以,是的,'arr.astype('| S10')'应该在你的阵列上工作。 – unutbu