Python 복습 (12) : 튜플

STUDY_J·2024년 7월 17일

1) 튜플(tuple)이란

튜플(Tuple)은 파이썬의 내장 자료형 중 하나로, 여러 개의 값을 하나의 변수에 저장할 수 있는 자료구조입니다.
리스트와 비슷하지만, 한 번 생성된 후에는 그 값을 변경할 수 없는 "불변(immutable)" 특성을 가집니다.

2) 튜플의 특징

2-1) 불변성 (Immutable)

튜플의 요소들은 생성 후 변경할 수 없습니다.

2-2) 다양한 데이터 타입 저장 가능

하나의 튜플에 다양한 데이터 타입을 저장할 수 있습니다.
(예를들어, 하나의 튜플안에 정수, 문자(열), 리스트 등 다양한 데이터 타입 저장 가능)

2-3) 중첩 가능

튜플은 다른 튜플이나 리스트를 요소로 가질 수 있습니다.

2-4) 소괄호 사용

튜플은 주로 소괄호 ()로 정의합니다. (괄호를 생략할 수도 있음)
(튜플을 만들때는 () 형태로 표현하며, 요소가 한 개인 튜플을 생성할때는 반드시 콤마(,)를 붙여야함)

t1 = () # 빈 튜플
t2 = (1,2,3,'abc') # 다양한 데이터 타입을 가진 튜플
t3 = (1,2,3,[1,2],'abc') # 다양한 데이터 타입을 가진 튜플
t4 = 1,2 # 괄호는 생략가능
t5 = 1,2,[1,2],(1,2)

#요소가 한 개인 튜플을 생성할 때는 주의 해야함
t6 = (2,) # 튜플 생성
t7 = 2, # 튜플 생성
t7 = 'helli', #튜플생성

t8 = (2) # 튜플이 아닌 정수임
t9 = ('hello') # 튜플이 아닌 문자열임

2-5) 리스트에서의 인덱싱,슬라이싱 등 동일하게 사용가능 (예외는 있음)

2-6) 튜플의 요소 변경은 안된다.

  • 아래 예시에서 리스트는 요소 변경이 가능하지만 튜플은 요소 변경이 불가능함.
t1 = (1,2,[1,2])
l1 = [1,2,[1,2]]

l1[1] = 3
print(l1) # [1, 3, [1, 2]]

t1[1] = 3
print(t2) # 에러 발생

t1[2][0] = 4
print(t1)
  • 하지만 튜플 내의 리스트에 접근하여, 튜플 내의 리스트 요소는 변경이 가능함.
t1 = (1,2,[1,2])

t1[2][0] = 4
print(t1)
# (1, 2, [4, 2]) , 튜플 내의 리스트 요소가 바뀐것을 확인할 수 있음

0개의 댓글