У меня есть этот код, который перебирает список матриц, получает их np.sum и добавляет / вычитает переменные.Этот код является частью более крупной проблемы симуляции, которой я занимаюсь, и, поскольку этот маленький кусочек кода выполняется примерно в 10 и более раз каждый раз, когда я запускаю всю программу, я стараюсь сделать ее максимально эффективной.Есть ли способ упростить это, заставить его работать быстрее?Я искал несколько советов по проверке, но не нашел ни одного, как сделать это более эффективным
#mi could be of any size
mi = np.random.randint(2,size=(4,4))
#the arrays in list_of_blocks could be of any size so the np.sum of the list would end in a ValueError
list_of_blocks = [np.array([[0],[1]]),np.array([[0,0,0],[0,1,0]])]
nee = np.sum(mi)
n1 =0
mrxnr= 0
for block in list_of_blocks:
nee -= np.sum(block)
n1 += np.sum(block)
mrxnr += block.shape[0]*block.shape[1]