Hei*_*inz 0 python arrays numpy
我得到一个包含多个数组的列表,我写了下面的代码试着看看这些数组的shape [0],
for i in xrange(len(list)):
k = list[i].shape[0]
print k
Run Code Online (Sandbox Code Playgroud)
输出是正确的,但我想检查这些形状[0],也就是说,如果它们相同,则函数将继续,否则,如果它们不是相同的数字,则函数会中断.这该怎么做?随意给我建议,非常感谢.
我创建了一个名为'ab'的列表,其中包含3个不同的数组,并使用错误和异常代码来检查形状[0]:
ab = [np.array([[1,2,3],[1,2,3]]),
np.array([[1,2,3]]),
np.array([[1,2,3],[1,2,3],[0,1,2],[0,9,9]])]
for i in xrange(len(ab)):
k = ab[i].shape[0]
print k
try:
all(x.shape[0]==ab[0].shape[0] for x in ab)
print 'True'
except ValueError:
print 'False'
Run Code Online (Sandbox Code Playgroud)
但产出是:
2
1
4
True
Run Code Online (Sandbox Code Playgroud)
输出是错误的,我在哪里犯了错误?