Python 检查数组的轴是否为零值

Python 检查数组的轴是否为零值,python,arrays,numpy,Python,Arrays,Numpy,我知道numpy.all()。所以 假设我只想检查数组的最后一个元素,而不是整个轴,比如: B = np.array([[[ 1, 1, 2], [ 3, 4, 5], [ 6, 7, 8]], [[ 9, 10, 11], [12, 13, 14], [15, 16, 17]], [[18, 19, 20], [21, 22, 23], [0, 0, 0]

我知道
numpy.all()。所以

假设我只想检查数组的最后一个元素,而不是整个轴,比如:

B = np.array([[[ 1,  1,  2],
        [ 3,  4,  5],
        [ 6,  7,  8]],

       [[ 9, 10, 11],
        [12, 13, 14],
        [15, 16, 17]],

       [[18, 19, 20],
        [21, 22, 23],
        [0, 0, 0]]])

如何做到这一点?

一个简单的方法是只使用
-1
索引(从类似序列的对象的末尾向后索引)

B=np.array([[1,1,2],
[ 3,  4,  5],
[ 6,  7,  8]],
[[ 9, 10, 11],
[12, 13, 14],
[15, 16, 17]],
[[18, 19, 20],
[21, 22, 23],
[0, 0, 0]]])
打印(B[-1,-1])
打印(np.any(B[-1,-1]))
打印(np.all(B[-1,-1]))
给予


从那里,你可以使用任何你想确定真假的方法。

你到底希望从
B
中得到什么?你总是对最后一个矩阵的最后一行感兴趣,还是有一个你感兴趣的更一般的安排?@JosephGlover我对最后的
n行感兴趣最后5.做
B[-1,-1]
B[-1][-1]
好。我想检查最后的
n行
。例如,检查最后5行。您是指最后一个矩阵中的最后一行还是最后一个
n
矩阵中的最后一行?最后一个
n行是指最后一个
n矩阵中的最后一行
B = np.array([[[ 1,  1,  2],
        [ 3,  4,  5],
        [ 6,  7,  8]],

       [[ 9, 10, 11],
        [12, 13, 14],
        [15, 16, 17]],

       [[18, 19, 20],
        [21, 22, 23],
        [0, 0, 0]]])
[0 0 0]
False
False