Обращение к подмассивам
Попрактикуемся в работе с элементами массивов NumPy! Ваша задача — преобразовать квадратный двумерный массив square размера size в список, обходя его по спирали:

Вместо того чтобы просто обращаться к отдельным срезам, вам нужно реализовать более общее решение с использованием цикла for (решение должно работать для любых квадратных двумерных массивов нечётного размера).
Модуль numpy уже импортирован как np.
Вам понадобится функция reversed(), которая разворачивает итерируемый объект в обратном порядке.
Это упражнение является частью курса
Практика задач для собеседования по программированию на Python
Инструкции к упражнению
- Преобразуйте в список каждый фрагмент, отмеченный красной стрелкой.
- Преобразуйте в список каждый фрагмент, отмеченный зелёной стрелкой.
- Преобразуйте в список каждый фрагмент, отмеченный синей стрелкой.
- Преобразуйте в список каждый фрагмент, отмеченный пурпурной стрелкой.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
spiral = []
for i in range(0, size):
# Convert each part marked by any red arrow to a list
spiral += list(square[i, ____:____])
# Convert each part marked by any green arrow to a list
spiral += list(square[____:____, size-i-1])
# Convert each part marked by any blue arrow to a list
spiral += list(reversed(square[size-i-1, ____:____]))
# Convert each part marked by any magenta arrow to a list
spiral += list(reversed(square[____:size-i-1, ____]))
print(spiral)