Python 将数组的数组转换为单个数组

Python 将数组的数组转换为单个数组,python,arrays,numpy,Python,Arrays,Numpy,我想将数组列表扩展为单个数组,例如: a= 成为: a = [array([1,2,3,4,5,6,7,8,9])] 如何做到这一点?尝试使用 list.extend 它会起作用的 也许你想要这个 from numpy import array k=[array([1,2,3]), array([4,5,6]), array([7,8,9,])] l=[] for i in range(len(k)): l.extend(k[i]) print(array(l)) 输出: array(

我想将数组列表扩展为单个数组,例如: a=

成为:

a = [array([1,2,3,4,5,6,7,8,9])]
如何做到这一点?

尝试使用

list.extend
它会起作用的 也许你想要这个

from numpy import array
k=[array([1,2,3]), array([4,5,6]), array([7,8,9,])]
l=[]
for i in range(len(k)):
  l.extend(k[i])
print(array(l))
输出:

array([1, 2, 3, 4, 5, 6, 7, 8, 9])


可以使用Numpy的重塑来执行此操作:-

a=[[1,2,3],[3,4,5],[6,7,8]]
print("Before:" , a)
import numpy as np
a=np.reshape(a,9)
print("After:",a)
输出:

Before: [[1, 2, 3], [3, 4, 5], [6, 7, 8]]
After: [1 2 3 3 4 5 6 7 8]

希望这就是您想要的。

一个选项是将列表转换为np.array,然后在列表中展开:

>>> import numpy as np
>>> arr = [np.array([1,2,3]), np.array([4,5,6]), np.array([7,8,9,])]
>>> [np.array(arr).flatten()]
[array([1, 2, 3, 4, 5, 6, 7, 8, 9])]

这回答了你的问题吗?
>>> import numpy as np
>>> arr = [np.array([1,2,3]), np.array([4,5,6]), np.array([7,8,9,])]
>>> [np.array(arr).flatten()]
[array([1, 2, 3, 4, 5, 6, 7, 8, 9])]