Python 为什么不打印空numpy数组
如果我初始化python列表Python 为什么不打印空numpy数组,python,arrays,numpy,Python,Arrays,Numpy,如果我初始化python列表 x = [[],[],[]] print(x) 然后它回来了 [[], [], []] 但是如果我对numpy数组也这样做 x = np.array([np.array([]),np.array([]),np.array([])]) print(x) 然后它只会回来 [] 如何使其像普通python列表一样返回嵌套的空列表?要从numpy数组返回嵌套的空列表,可以执行以下操作: x.tolist() [[], [], []] 但是,即使它只打印[],形状也
x = [[],[],[]]
print(x)
然后它回来了
[[], [], []]
但是如果我对numpy数组也这样做
x = np.array([np.array([]),np.array([]),np.array([])])
print(x)
然后它只会回来
[]
如何使其像普通python列表一样返回嵌套的空列表?要从numpy数组返回嵌套的空列表,可以执行以下操作:
x.tolist()
[[], [], []]
但是,即使它只打印[]
,形状也是正确的:
x.shape
(3, 0)
您可以访问任何元素,如列表:
x[0]
array([], dtype=float64)
最简单的解决方案是将其转换为带有
tolist
x = np.array([np.array([]),np.array([]),np.array([])])
print(x)
[]
print(x.tolist())
[[], [], []]
它实际上返回一个嵌套的空列表。例如,试试看
x = np.array([np.array([]),np.array([]),np.array([])])
>>> array([], shape=(3, 0), dtype=float64)
或
不要让
print x的输出欺骗你。这些类型的输出仅仅反映了\uuuu str\uuuuu
和\uuu repr\uuuu
实现者的(美学)选择。要真正看到确切的尺寸,需要使用。shape
tolist
在这里是个聪明的主意。tolist
在这里是个聪明的主意。
>>> print x.shape
(3, 0)