파이썬 튜플 자료형: 리스트와의 차이점 및 활용 방법
파이썬에서는 여러 가지 자료형을 사용하여 데이터를 표현할 수 있습니다. 그중 튜플(tuple)은 리스트와 비슷한 형태의 자료형이지만 몇 가지 중요한 차이점이 있습니다. 이 글에서는 튜플과 리스트의 차이점을 중심으로 튜플의 특징과 사용 사례에 대해 알아보겠습니다.
튜플 사용 예시
다음은 튜플을 생성하는 몇 가지 예시입니다. 이러한 다양한 방식으로 튜플을 생성하고 활용할 수 있습니다.
t1 = () # 1. 빈 튜플 생성하기
t2 = (1,) # 2. 한 개의 요소를 가진 튜플 생성하기
t3 = (1, 2, 3) # 3. 여러 개의 요소를 가진 튜플 생성하기
t4 = 1, 2, 3 # 4. 괄호를 생략한 튜플 생성하기
t5 = ('a', 'b', ('ab', 'cd')) # 5. 튜플 안에 튜플을 포함한 튜플 생성하기
튜플과 리스트의 차이점
튜플과 리스트의 가장 큰 차이점은 ‘불변성(immutable)‘입니다. 리스트는 요소의 생성, 삭제, 수정이 가능하지만 튜플은 요소 값을 바꿀 수 없습니다. 이로 인해 튜플은 요소값을 변경할 수 없기 때문에 sort, insert, remove, pop과 같은 내장 함수가 없습니다.
예시: 리스트와 튜플의 생성 및 출력
# 리스트 생성
my_list = [1, 2, 3]
print(my_list) # 출력: [1, 2, 3]
# 튜플 생성
my_tuple = (1, 2, 3)
print(my_tuple) # 출력: (1, 2, 3)
결과 화면

예시: 리스트와 튜플의 요소 수정
# 리스트 요소 수정
my_list = [1, 2, 3]
my_list[0] = 100
print(my_list) # 출력: [100, 2, 3]
# 튜플 요소 수정 (오류 발생)
my_tuple = (1, 2, 3)
my_tuple[0] = 100 # TypeError: 'tuple' object does not support item assignment
결과 화면

튜플의 활용 방법
튜플이 불변성을 가지는 이유는 데이터의 안정성을 보장하고, 메모리 사용량을 최적화하기 위함입니다. 따라서 튜플은 아래와 같은 경우에 사용하는 것이 적절합니다.
1. 요소의 순서가 중요한 경우: 튜플은 순서가 유지되므로, 데이터의 순서가 중요한 경우 튜플을 사용할 수 있습니다.
2. 요소 값이 변경되지 않아야 하는 경우: 튜플은 불변성을 가지기 때문에, 데이터가 변경되지 않아야 하는 경우 튜플을 사용하는 것이 좋습니다. 예를 들어, 상수 값을 저장하는 데 튜플을 사용할 수 있습니다.
3. 여러 값을 한 번에 반환하는 함수를 작성할 때: 함수에서 여러 값을 한 번에 반환하려면 튜플을 사용할 수 있습니다. 튜플을 이용하면 괄호를 생략하여 여러 값을 반환하는 것처럼 표현할 수 있습니다.
def calculate(a, b):
sum = a + b
difference = a - b
return sum, difference # 괄호를 생략한 튜플
result = calculate(10, 5)
print(result) # 출력: (15, 5)
4. 데이터를 구조화하는 데 사용: 튜플은 간단한 데이터 구조를 만드는 데 사용할 수 있습니다. 예를 들어, 좌표 (x, y)를 표현하는 데 튜플을 사용할 수 있습니다.
point = (3, 4)
x, y = point
print(x, y) # 출력: 3 4
☞ 이와 같이 튜플은 불변성을 가지는 것을 활용하여 다양한 상황에서 사용할 수 있습니다. 튜플과 리스트의 차이점을 이해하고 적절한 자료형을 선택하시면 됩니다.
참고 자료
함께 보면 좋은 이전 게시글
- 파이썬 리스트 자료형: 리스트의 개념과 기본 구조
- 파이썬 리스트 인덱싱과 슬라이싱: 데이터에 접근하는 방법
- 파이썬 리스트 연산: 리스트 간의 덧셈, 곱셈 및 수정, 삭제
- 파이썬에서 데이터 타입 변환하기: int(), float(), str() 함수 사용법
- 파이썬에서 문자열 다루기: 인덱싱과 슬라이싱 기법
이 글이 도움이 되셨다면 공유를 부탁 드립니다. 다음 글에서 뵙겠습니다!