# 내 풀이
def solution(num_list, n):
answer = []
for i in range(0, len(num_list), n):
answer.append(num_list[i:i+n])
return answer
- range(start, stop, step)
- start : 시작 숫자 (생략하면 기본값 0)
- stop : 끝 숫자 (ex. 11이면 -> 인덱스 10까지)
- step : 증가/감소 간격 (생략하면 기본값 1)
- 리스트 슬라이싱을 사용하여 서브리스트를 추출한 후, answer 리스트에 추가
# GPT 풀이_1
def solution(num_list, n):
return [num_list[i:i+n] for i in range(0, len(num_list), n)]
# 리스트 슬라이싱 :
리스트 슬라이싱을 사용하면 리스트의 특정 부분(서브 리스트)을 쉽게 추출할 수 있다.
list[start:stop:step]
- start : 시작 인덱스
- stop : 끝 인덱스
- step : 간격 (생략하면 1)
num_list = [1, 2, 3, 4, 5, 6, 7, 8]
print(num_list[::2]) # [1, 3, 5, 7] → 2칸씩 건너뛰기
print(num_list[1::2]) # [2, 4, 6, 8] → 인덱스 1부터 2칸씩 건너뛰기