nonzero(a)返回数组a中值不为零的元素的下标,它的返回值是一个长度为a.ndim(数组a的轴数)的元组,元组的每个元素都是一个整数数组,其值为非零元素的下标在对应轴上的值。例如对于一维布尔数组b1,nonzero(b1)所得到的是一个长度为1的元组,它表示b1[0]和b1[2]的值不为0(False)。
- >>> b1=np.array([True, False, True, False])
- >>> np.nonzero(b1)
- (array([0, 2], dtype=int64),)
- >>> b2 = np.array([[True, False, True], [True, False, False]])
- >>> np.nonzero(b2)
- (array([0, 0, 1], dtype=int64), array([0, 2, 0], dtype=int64))