好的,我发现数组的形状中可以包含 0。
对于将 0 作为唯一维度的情况,这对我来说是有意义的。它是一个空数组。
np.zeros(0)
但如果你有这样的情况:
np.zeros((0, 100))
让我很困惑。为什么这么定义呢?
据我所知,这只是表达空数组的一种冗余方式。如果有“空”行,对于 python 来说似乎并不重要。
假设我们有一个给定的数组 a:
import numpy as np
a = np.zeros((0,100))
如果我们打印 a 我们得到的只是空数组本身:
print(a)
>>> []
此外,我们实际上可以看到,尽管如此,它仍保持其形状”
np.shape(a)
>>> (0, 100)
但是,如果您尝试按位置访问给定元素,例如:
print(a[0])
or
print(a[0][0])
你会得到一个 IndexError :
IndexError: index 0 is out of bounds for axis 0 with size 0
因此,我相信空数组的数学含义,无论您分配给它们的形状如何,都是相同的。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)