проблема с индексной ошибкой массива - PullRequest
0 голосов
/ 11 декабря 2018
arr = np.arange(1,21).reshape(4,5)
print(arr)

def find_depot_placement(grid):
    for x in range(grid.shape[0]):
        for y in range(grid.shape[1]):
            start = grid[x][y]
            down = grid[x+1][y]
            bot_right = grid[x+1][y+1]
            right = grid[x][y+1]
            check_map_bounds(grid, start)
            check_map_bounds(grid, down)
            check_map_bounds(grid, bot_right)
            check_map_bounds(grid, right)


def check_map_bounds(grid, position):
    if position in grid:
        print("position", position)
    else:
        pass

Я знаю, что идет не так, цикл заканчивается поиском элементов вне индекса установленного массива.Как я могу держать это в пределах массива?Мне бы хотелось, чтобы он начинался со следующего набора чисел, как только он достигнет конца границ

[[ 1  2  3  4  5]
 [ 6  7  8  9 10]
 [11 12 13 14 15]
 [16 17 18 19 20]]
position 1
position 6
position 7
position 2
position 2
position 7
position 8
position 3
position 3
position 8
position 9
position 4
position 4
position 9
position 10
position 5
IndexError: index 5 is out of bounds for axis 0 with size 5
...