Вы используете остаток суммы, но это не обязательно дает вам нечетное или четное, потому что нечетное + нечетное + четное будет четным числом. Тем не менее, вы можете использовать тот факт, что NumPy поддерживает не только скаляры в качестве индексов. А также вы можете не использовать if
с pass
, если вы укажете range(1, self.size-1)
. Вы можете использовать следующий код:
Matrix[range(1,self.size-1,2),range(1,self.size-1,2),range(1,self.size-1,2)]=2
Matrix[range(2,self.size-1,2),range(2,self.size-1,2),range(2,self.size-1,2)]=2
Третий параметр позволяет вам повторять каждое второе число