将2D数组合并到列表python中

时间:2014-11-13 17:24:58

标签: python arrays list numpy

我想要做的是像这样转动2D数组:

  

np.array([[0,1,2,3],                        [1,5,6,7]])

到此(包含所有数字的列表):

  

[0,1,2,3,1,5,6,7]

有没有办法让它成为现实?

1 个答案:

答案 0 :(得分:1)

x = np.array([[ 0, 1, 2, 3], [ 1, 5, 6, 7]])    

list(x.flat)    # if you want a list
#  [0, 1, 2, 3, 1, 5, 6, 7]

x.flatten()  # if you want a numpy array
#   array([0, 1, 2, 3, 1, 5, 6, 7])

我不清楚你是否想要一个列表或numpy数组,但它们都很容易获得(虽然我假设你想要一个列表,因为你用list标记了这个问题)。选择您想要的或对您最有用的是合理的。

对于许多用途,numpy has significant advantages over lists,但有时列表的效果也会更好。例如,在许多结构中,一次只获取一个项目,并且事先不知道结果输出数组的大小,在这种情况下,使用append构建列表是有意义的。然后将其转换为numpy数组以进行FFT。

还有其他方法可以在列表和numpy数组之间进行转换。如果您需要做一些不同的事情(例如,更快),请务必查看文档或回复此处。