Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

Python 튜플 인덱싱과 슬라이싱 방법 총정리

Python에서 튜플(tuple)의 특정 요소에 접근하거나 일부분을 추출하려면 대괄호 [] 연산자를 사용합니다. 인덱싱은 튜플에서 하나의 요소를 가져오는 기능이며, 슬라이싱은 여러 요소를 한 번에 잘라내는 기능입니다.

튜플 인덱싱하기

인덱싱 시 양의 정수를 사용하면 왼쪽(앞)부터 해당 위치의 요소를 가져옵니다. 반대로 음의 정수를 사용하면 오른쪽(뒤)부터 역순으로 계산하여 해당 위치의 요소를 가져옵니다. 예를 들어 -1은 마지막 요소를 의미합니다.

예제

my_tuple = ('a', 'b', 'c', 'd')
print(my_tuple[1])   # 앞에서 두 번째 요소
print(my_tuple[-1])  # 뒤에서 첫 번째 요소

출력 결과

b
d

튜플 슬라이싱하기

튜플의 일부분을 추출하고 싶다면 슬라이싱 연산자인 [start:stop:step] 형식을 사용합니다. 각 항목의 의미는 다음과 같습니다.

  • start: 슬라이싱을 시작할 인덱스 (생략 시 처음부터)
  • stop: 슬라이싱을 종료할 인덱스 (이 인덱스는 포함되지 않음)
  • step: 요소를 건너뛰는 간격 (생략 시 1)

예제

my_tuple = ('a', 'b', 'c', 'd')
print(my_tuple[1:])   # 인덱스 1부터 끝까지 출력
print(my_tuple[:2])   # 처음부터 인덱스 2 직전까지 출력
print(my_tuple[1:3])  # 인덱스 1부터 3 직전까지 출력
print(my_tuple[::2])  # 처음부터 끝까지 2칸씩 건너뛰며 출력

출력 결과

('b', 'c', 'd')
('a', 'b')
('b', 'c')
('a', 'c')

슬라이싱을 활용하면 범위 지정 없이 전체 튜플을 복사할 수도 있고(my_tuple[:]), 음수 인덱스와 조합하여 유연하게 데이터를 다룰 수 있습니다. 리스트와 달리 튜플은 불변(immutable) 자료형이므로, 인덱싱과 슬라이싱으로 값을 읽는 것만 가능하다는 점도 기억해 두세요.