为什么没有打印空的numpy数组

Sru*_*uli 7 python arrays numpy

如果我初始化一个python列表

x = [[],[],[]]
print(x)
Run Code Online (Sandbox Code Playgroud)

然后它返回

[[], [], []]
Run Code Online (Sandbox Code Playgroud)

但如果我用一个numpy数组做同样的事情

x = np.array([np.array([]),np.array([]),np.array([])])
print(x)
Run Code Online (Sandbox Code Playgroud)

然后它才会返回

[]
Run Code Online (Sandbox Code Playgroud)

如何让它返回一个嵌套的空列表,就像它对普通的python列表一样?

Ami*_*ory 8

确实返回一个嵌套的空列表.例如,试试

x = np.array([np.array([]),np.array([]),np.array([])])
>>> array([], shape=(3, 0), dtype=float64)
Run Code Online (Sandbox Code Playgroud)

要么

>>> print x.shape
(3, 0)
Run Code Online (Sandbox Code Playgroud)

不要让输出print x愚弄你.这些类型的输出仅仅反映的实现者的(美观)的选择__str____repr__.要真正查看确切的维度,您需要使用类似的东西.shape.