— Python
파이썬 슬라이싱 (Slicing) 이란?
슬라이싱은 리스트나 문자열 등의 연속적인 객체들의 범위를 지정해서 객체들을 가져오는 방법을 의미한다. 슬라이싱을 하면 객체의 일부분을 잘라낸 새로운 객체를 생성하게 된다.
1lst[start:end:step]
lst라는 객체가 있다면 lst [start
:end
:step
] 가 슬라이싱의 기본 형태가 된다.
start
: 슬라이싱을 시작할 시작 위치
end
: 슬라이싱을 끝낼 위치로 end
값을 포함하지 않고 end
-1 까지의 값을 포함한다
step
: 슬라이싱 할 단위를 지정하며 생략할 경우 1단위가 된다.
슬라이싱의 사용
1>>> lst = [0,1,2,3,4,5,6,7,8,9]2
3>>> lst[0:10]4[0,1,2,3,4,5,6,7,8,9]5
6>>> lst[:10] # start 값을 생략하면 맨 앞을 의미한다7[0,1,2,3,4,5,6,7,8,9]8
9>>> lst[:] # end 를 생략하면 맨 뒤를 의미한다10[0,1,2,3,4,5,6,7,8,9]11
12>>> lst[:len(lst)]13[0,1,2,3,4,5,6,7,8,9]
1>>> lst = [0,1,2,3,4,5,6,7,8,9]2
3>>> lst[1:3] # 인덱스 1부터 2까지 값을 가져온다4[1,2]5
6>>> lst[6:] # 인덱스 6부터 -1(맨 뒷값)까지 값을 가져온다7[6,7,8,9]8
9>>> lst[4:-1] # 인덱스 4부터 -2(뒤에서 두번째)까지 값을 가져온다10[4,5,6,7,8]
1>>> lst = [0,1,2,3,4,5,6,7,8,9]2
3>>> lst[::2] # 처음부터 끝까지 2만큼 증가시키며 가져온다4[0,2,4,6,8]5
6>>> lst[2:-1:3] # 인덱스 2부터 -2까지 3씩 증가시키며 가져온다7[2,5,8]8
9>>> lst[::-1] # 끝부터 처음까지 순서를 반대로 가져온다10[9,8,7,6,5,4,3,2,1]11
12>>> lst[8:1:-2] # 인덱스 8부터 2까지 -2씩 가져온다13[8,6,4,2]