슬라이싱(slicing)은 「문자열·리스트의 일부를 자르거나 뒤집는」 매우 강력한 문법입니다.
[시작:끝:간격] 형식이며, 한 번 익히면 거의 매일 씁니다.
기본 형식.
s = "파이썬"; s[0] — 「파」, s[1] — 「이」, s[-1] — 「썬」(뒤에서 첫째).
s[0:2] — 「파이」(0~1까지, 2 미포함).
s[:2] — 「파이」(처음부터 1까지).
s[1:] — 「이썬」(1부터 끝까지).
「간격(step)」을 쓰면 더 다양한 변형이 가능합니다.
s[::2] — 한 칸씩 건너뛰기(예: "파이썬" → "파썬").
s[::-1] — 뒤집기(예: "파이썬" → "썬이파").
이 「s[::-1]」 한 줄로 문자열을 뒤집을 수 있는 점이 파이썬의 매력입니다.
비유하자면 슬라이싱은 「자(ruler)로 종이를 자르는 일」과 같습니다.
「몇 cm부터 몇 cm까지, 몇 cm 간격으로」를 한 표현으로 정합니다.
같은 문법이 리스트에도 적용되어 my_list[1:5]처럼 일관되게 작동합니다.
주의할 점은 「인덱스 범위를 벗어나도 오류가 안 난다」는 것입니다.
"abc"[10:20]은 빈 문자열 ""를 반환합니다.
같은 인덱스로 단일 접근("abc"[10])은 IndexError가 나는 것과 대비되는 부드러운 동작입니다.
한 줄 요약
슬라이싱은 [시작:끝:간격] 형식으로 문자열·리스트의 일부를 자르거나 뒤집습니다.
s[::-1]로 뒤집기, s[::2]로 건너뛰기 등 다양한 변형이 한 줄로 가능합니다.
더 알아볼 것
- 슬라이스 객체(slice)
- 음수 인덱스의 의미
- 리스트 슬라이싱과의 동일한 문법