предположим, у меня есть этот 2-мерный массив A:
[[0,0,0,0],
[0,0,0,0],
[0,0,0,0],
[0,0,0,4]]
, и я хочу суммировать B:
[[1,2,3]
[4,5,6]
[7,8,9]]
с центром в A [0] [0], чтобы результат был:
array_sum(A,B,0,0) =
[[5,6,0,4],
[8,9,0,0],
[0,0,0,0],
[2,0,0,5]]
Я думал, что должен создать функцию, которая сравнивает ее на границе, а затем настроить индекс для этого:
def array_sum(A,B,i,f):
...
if i == 0 and j == 0:
A[-1][-1] = A[-1][-1]+B[0][0]
...
else:
A[i-1][j-1] = A[i][j]+B[0][0]
A[i][j] = A[i][j]+B[1][1]
A[i+1][j+1] = A[i][j]+B[2][2]
...
, но я не знаю,есть лучший способ сделать это, я читал о вещании или, может быть, использовал для этого Convolute, но я не уверен, есть ли лучший способ сделать это.