Я бы предложил проверить границы массива заранее.Однако, если вы действительно хотите, один из способов сделать это состоит в том, чтобы заполнить массив значением, которое будет сравниваться не равным всем числам, таким как None
:
a = np.zeros((3, 3))
padded = np.pad(a.astype(object), [(0, 1), (0, 1)], 'constant', constant_values=None)
print((a[:3, :3] == 0).all())
print((a[:4, :4] == 0).all())
print((padded[:3, :3] == 0).all())
print((padded[:4, :4] == 0).all())
Вывод:
True
True
True
False
Обратите внимание, что для этого необходимо преобразовать ваш массив в тип object
.