부분 배열 접근하기
NumPy 배열의 요소에 접근해 봅시다! 여러분의 과제는 한 변의 길이가 size인 정사각형 2차원 배열 square를 나선형 패턴을 따라 만든 리스트로 변환하는 거예요:

특정 슬라이스만 단순히 접근하는 대신, for 루프를 사용해 더 일반적인 해법을 구현해 보세요(해법은 홀수 크기의 모든 정사각형 2차원 배열에서 동작해야 합니다).
모듈 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)