[Python] 05. 튜플(Tuple) 자료형

2023. 11. 4. 23:42·Programming Language/Python

튜플(Tuple) 자료형


  • 튜플(Tuple)이란?

    • 콤마(,)로 구분되는 임의의 python objects들의 목록

    • compound data

    • 길이가 1개짜리 tuple 생성 시 뒤에 반드시 ,를 붙여야 함

  • 리스트와 튜플의 공통점, 차이점

    • 리스트는 []로 둘러싸고, 튜플은 ()로 둘러쌈

    • 리스트는 값의 생성, 수정, 삭제가 가능하지만, 튜플은 그 값을 바꿀 수 없다.

      (수정하려고 시도하는 경우에는 오류 발생)

      • 값이 바뀔까 걱정될 때는 튜플을, 값이 자주 변화될 경우에는 리스트를 사용한다.
  • 튜플(Tuple)의 생성 방법 (Packing)

    • 기본적인 생성 방법

      리스트명 = (a, b, c, d, ...)
    • example

      t1 = ()
      t2 = (1,) # 1개의 요소만을 가질 때는 요소 뒤에 ,를 붙여야 한다.
      t3 = (1, 2, 3)
      t4 = 1, 2, 3 # 괄호를 생략해도 무방하다
      t5 = ('a', 'b', ('ab', 'cd')) # 튜플은 튜플을 가질 수 있다.
  • 튜플 인덱싱

    : 튜플이름[인덱스]

    t1 = (1, 2, 'a', 'b')
    t1[0]
    res : 1
  • 튜플 슬라이싱

    : 리스트에서 사용하던 방식과 유사

    t1 = (1, 2, 'a', 'b')
    t1[1:] # 대괄호를 사용하자
    res : (2, 'a', 'b')
    
    t1[0::2] # 0번째 인덱스부터 끝까지, 슬라이스 할 간격(step) = 2
    res : (1, 'a')
    
    t1[::-1] # 역순으로, 슬라이스 할 간격 = -1
    res : ('b', 'a', 2, 1)
  • 튜플 더하기

    t1 = (1, 2, 'a', 'b')
    t2 = (3, 4)
    t1 + t2
    res : (1, 2, 'a', 'b', 3, 4)
    
    (1, 2, 3)에 값 4를 더해 (1, 2, 3, 4) 만들기
    --> (1, 2, 3) + (4,)
  • 튜플 곱하기

    t2 = (3, 4)
    t2 * 3
    res : (3, 4, 3, 4, 3, 4)
  • 튜플 길이 구하기(len 함수)

    t1 = (1, 2, 'a', 'b')
    len(t1)
    res : 4
  • 튜플 언패킹(Unpacking)

    • 튜플에 묶여있는 데이터를 풀어낸다는 뜻
    Coffee = (2000, "Large") # 튜플 패킹
    Price, Size = Coffee # 튜플 언패킹
    
    prof_tuple = ('choi', 327, True)
    name, *others = prof_tuple # 첫번째 요소를 name에, 나머지 원소를 others에 튜플로 저장
    # name = 'choi'
    # others = (327, True)

참조) Do it! 점프 투 파이썬 (박응용 지음), https://wikidocs.net (파이썬 계단밟기)

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

[Python] 07. 딕셔너리(Dictionary) 자료형  (0) 2023.11.05
[Python] 06. 집합(set) 자료형  (0) 2023.11.05
[Python] 04. 리스트(list) 자료형  (0) 2023.11.04
[Python] 02. 변수의 선언과 자료형, 연산  (0) 2023.11.04
[Python] 03. 파이썬 표준 출력과 문자열  (0) 2023.11.02
'Programming Language/Python' 카테고리의 다른 글
  • [Python] 07. 딕셔너리(Dictionary) 자료형
  • [Python] 06. 집합(set) 자료형
  • [Python] 04. 리스트(list) 자료형
  • [Python] 02. 변수의 선언과 자료형, 연산
lumana
lumana
배움을 나누는 공간 https://github.com/bebeis
  • lumana
    Brute force Study
    lumana
  • 전체
    오늘
    어제
    • 분류 전체보기
      • Spring
        • MVC
        • DB
        • 핵심 원리
        • JPA
      • WEB
        • HTML
        • CSS
        • HTTP
        • Application
      • Computer Science
        • Network
        • Database
        • OS
        • 시스템 프로그래밍
        • 컴퓨터구조
      • Algorithm
        • Divide&Conquer
        • Sort
        • Greedy
        • DP
        • Backtracking
        • NP-Complete
        • Graph
      • Data Structure
        • 자료구조
        • C++ STL
        • Java Collection
      • 소프트웨어 공학
        • 시험 공부 정리
        • Theorem
      • Programming Language
        • Python
        • Java
        • C
        • C++
        • Rust
        • Theory
      • Unix_Linux
        • Common
      • React
      • PS
        • BOJ
        • Tip
        • 프로그래머스
        • CodeForce
      • Book Review
        • Clean Code
      • Math
        • Linear Algebra
      • AI
        • DL
        • ML
        • DA
        • Concepts
      • 우아한테크코스
        • 프리코스
      • Project Review
      • LegacyPosts
      • Android
      • Apple
        • Mac
        • IPhone
        • IPad
      • 모니터
      • Diary
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
lumana
[Python] 05. 튜플(Tuple) 자료형
상단으로

티스토리툴바