Python 初始化二维数组以在每个位置保存列表

Python 初始化二维数组以在每个位置保存列表,python,numpy,Python,Numpy,我是否可以创建一个numpy数组,在每个位置存储一个列表(最初为空) 根据文档,numpy数组存储同构类型,因此我认为这是可能的。但是我可以初始化一个来保存空列表吗 如果numpy阵列无法做到这一点,我有什么替代方案?(我可以使用哪些其他2D矩阵状结构来保存列表/字典/元组?如果知道长度(我们称之为N),可以使用简单的列表理解,然后将其转换为numpy数组: >>> empty_array = numpy.array([[] for i in xrange(N)]) 这很少是

我是否可以创建一个numpy数组,在每个位置存储一个列表(最初为空)

根据文档,numpy数组存储同构类型,因此我认为这是可能的。但是我可以初始化一个来保存空列表吗


如果numpy阵列无法做到这一点,我有什么替代方案?(我可以使用哪些其他2D矩阵状结构来保存列表/字典/元组?

如果知道长度(我们称之为N),可以使用简单的列表理解,然后将其转换为numpy数组:

>>> empty_array = numpy.array([[] for i in xrange(N)])

这很少是一个好主意,但您需要的是一个对象类型的数组:

>>> a = np.empty((5,), dtype=object)
>>> a
array([None, None, None, None, None], dtype=object)
>>> a[0] = []
>>> a
array([[], None, None, None, None], dtype=object)
>>> a[0].append(4)
>>> a
array([[4], None, None, None, None], dtype=object)