튜플(Tuple) 자료형

2024. 12. 31. 16:32·Language/Python

1. 튜플이란?

튜플(Tuple)은 여러 값을 순서대로 저장하며, 변경할 수 없는 특성을 가지고 있는 데이터 구조입니다.

주로 데이터가 변경되지 않아야 하는 경우에 사용되며, 코드를 더 안전하고 명확하게 작성할 수 있도록 도와줍니다.

 

튜플의 주요 특징:

  • 순서가 있다: 인덱스를 사용하여 값에 접근할 수 있습니다.
  • 변경할 수 없다: 생성 후 값을 수정하거나 삭제할 수 없습니다.
  • 중복을 허용한다: 동일한 값을 여러 번 포함할 수 있습니다.

 


2. 튜플의 생성 방법

튜플은 소괄호( )를 사용하여 생성합니다.

값이 하나만 있는 경우, 쉼표(,)를 반드시 추가해야 튜플로 인식됩니다

# 튜플 생성 예시
empty_tuple = ()                # 빈 튜플
single_element = (5,)           # 요소가 하나인 튜플 (쉼표 필수)
multiple_elements = (1, 2, 3)   # 여러 요소가 있는 튜플

# 소괄호 없이도 튜플 생성 가능
implicit_tuple = 1, 2, 3

 

2.1 튜플 언패킹(Unpacking):

튜플을 생성할 때 각 요소를 변수에 할당할 수 있습니다.

a, b, c = (1, 2, 3)
print(a)  # 출력: 1
print(b)  # 출력: 2
print(c)  # 출력: 3

 


3. 튜플의 주요 특징

3.1 변경 불가능

  • 튜플의 요소는 생성 후 수정할 수 없습니다.
t = (1, 2, 3)
t[0] = 5  # 오류 발생: TypeError

 

 

 

3.2 빠른 처리 속도

  • 변경이 불가능하므로, 리스트보다 속도가 빠르고 메모리 사용이 효율적입니다.
  • 또한, 해싱이 가능하므로 최적화된 데이터 구조로 활용이 가능합니다.

 

3.3 인덱싱 및 슬라이싱 가능: 리스트와 유사하게 인덱싱과 슬라이싱을 지원합니다

t = (1, 2, 3, 4, 5)
print(t[1])      # 출력: 2
print(t[1:4])    # 출력: (2, 3, 4)

 

 

3.4 다양한 자료형 포함 가능

  • 튜플 내부에 서로 다른 자료형을 저장할 수 있습니다.
mixed_tuple = (1, "hello", [3, 4, 5])

 


4. 튜플 다루기 

튜플은 요소를 수정하거나 삭제할 수 없지만, 리스트와 유사하게 여러 연산과 함수를 지원합니다.

 

4.1 인덱싱 

  • 튜플은 리스트처럼 인덱싱을 통해 특정 위치의 값을 가져올 수 있습니다.
# 튜플 인덱싱 예제
example_tuple = (10, 20, "apple", "banana")
print(example_tuple[0])  # 출력: 10
print(example_tuple[3])  # 출력: banana

 

4.2 슬라이싱 

  • 튜플의 일부를 슬라이싱(slicing)을 통해 가져올 수 있습니다. 슬라이싱은 리스트와 동일한 문법을 사용합니다.
# 튜플 슬라이싱 예제
example_tuple = (10, 20, "apple", "banana")
print(example_tuple[1:])  # 출력: (20, 'apple', 'banana')
print(example_tuple[:2])  # 출력: (10, 20)

 

4.3 튜플 더하기 

  • 튜플 간의 더하기 연산은 두 튜플을 합쳐 새로운 튜플을 만듭니다. 기존 튜플은 변화하지 않습니다.
# 튜플 더하기 예제
tuple_a = (1, 2, 3)
tuple_b = ("x", "y")
result = tuple_a + tuple_b
print(result)  # 출력: (1, 2, 3, 'x', 'y')

 

4.4 튜플 곱하기 

  • 튜플에 정수를 곱하면 반복된 튜플이 생성됩니다.
# 튜플 곱하기 예제
tuple_a = (0, 1)
result = tuple_a * 3
print(result)  # 출력: (0, 1, 0, 1, 0, 1)

 

4.5 튜플 길이 구하기 

  • 튜플의 길이는 len() 함수를 사용하여 쉽게 확인할 수 있습니다.
# 튜플 길이 확인 예제
example_tuple = (100, 200, 300, 400)
print(len(example_tuple))  # 출력: 4

 


5. 튜플과 리스트의 차이점

가변성 변경 불가능 변경 가능
기호 () []
사용 목적 변경되지 않는 데이터 저장 자주 변경되는 데이터 저장
속도 리스트보다 빠름 튜플보다 느림
저작자표시 비영리 변경금지 (새창열림)

'Language > Python' 카테고리의 다른 글

sorted() 함수의 key=lambda 사용해서 정렬하기  (0) 2025.04.28
index() 함수  (0) 2025.04.20
리스트 자료형  (0) 2024.12.30
문자열 자료형  (0) 2024.12.29
숫자형 (Numeric Types)  (1) 2024.12.26
'Language/Python' 카테고리의 다른 글
  • sorted() 함수의 key=lambda 사용해서 정렬하기
  • index() 함수
  • 리스트 자료형
  • 문자열 자료형
스우스우03
스우스우03
보안 전문가가 되기 위한 노력들
  • 스우스우03
    스우스우
    스우스우03
  • 전체
    오늘
    어제
    • 분류 전체보기 (142)
      • 환경 세팅 및 사용법 (12)
        • 가상환경 (3)
        • Visual Studio Code (3)
        • GitHub (6)
      • Language (17)
        • Python (7)
        • C (2)
        • 알고리즘 (8)
      • Hack&Dev (15)
        • 암호학 (3)
        • Web (11)
        • Pwnable (1)
      • Wargame (88)
        • bandit wargame (42)
        • natas wargame (11)
        • wargame 암호학 (7)
        • Webhacking.kr (26)
        • wargame forensic (1)
        • wargame misc (1)
      • knowledge (8)
        • 기타 지식 (8)
      • 기타... (1)
  • hELLO· Designed By정상우.v4.10.0
스우스우03
튜플(Tuple) 자료형
상단으로

티스토리툴바