Python Tuple

2023. 1. 19. 22:39·Python
SMALL

튜플(tuple)

튜플은 시퀀스 타입의 한 종류입니다. 
튜플은 앞서 배운 리스트와 아주 유사합니다. 
단, 몇 가지 큰 차이점이 있습니다. 

1. 리스트를 선언 할때 [ ] 를 사용하여 선언해 줍니다. 튜플은 ( ) 을 사용하여 선언해 줍니다.
2. 리스트는 요소 값의 생성, 삭제, 수정이 가능하지만 튜플은 요소 값을 바꿀 수 없다.

튜플은 시퀀스 타입의 한 종류입니다. 
튜플은 앞서 배운 리스트와 아주 유사합니다. 
단, 몇 가지 큰 차이점이 있습니다. 

 

 

1. 튜플 선언

다음은 튜플은 선언해주는 코드입니다.
다음 처럼 ( ) 을 이용해서 선언을 해줄 수 있습니다.

# Can also mix object types
t = ('one',2)
# Show
t
('one', 2)

리스트와 동일하게 인덱싱을 통해 접근할 수도 있습니다.

# Use indexing just like we did in lists
t[0]
'one'

튜플은 인덱싱 이외에도 슬라이싱, 튜플 곱하기, 튜플 더하기, 튜플 길이구하기 등 튜플 내부의 객체에 직접적인 변화를 주는 것이 아니면 리스트와 동일하게 사용이 가능하다

 

2. 튜플의 불변성

불변성 때문에 튜플은 성장할 수 없습니다. 일단 튜플이 만들어지면 추가 할 수 없습니다.

t[0]= 'change'
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-8-1257c0aa9edd> in <module>()
----> 1 t[0]= 'change'

TypeError: 'tuple' object does not support item assignment
t.append('nope')
---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
<ipython-input-9-b75f5b09ac19> in <module>()
----> 1 t.append('nope')

AttributeError: 'tuple' object has no attribute 'append'

 

3. 튜플을 사용하는 경우

사용 가능한 메서드가 적은데 튜플을 사용하는 이유는 무엇입니까? 솔직히 말해서 튜플은 프로그래밍에서 리스트만큼 자주 사용되지는 않지만 불변성이 필요할 때 사용됩니다. 프로그램에서 객체를 전달하고 객체가 변경되지 않도록 해야 하는 경우 튜플이 해결책이 됩니다.(EX. 달력)

728x90

'Python' 카테고리의 다른 글

Python Loops  (0) 2023.01.20
Python Conditional Satement  (0) 2023.01.20
Python List  (0) 2023.01.19
Python Strings  (0) 2023.01.19
Pyton 객체와 데이터 구조 기초  (0) 2023.01.18
'Python' 카테고리의 다른 글
  • Python Loops
  • Python Conditional Satement
  • Python List
  • Python Strings
알파 조
알파 조
공부 일기장
  • 알파 조
    Blue Ocean
    알파 조
  • 전체
    오늘
    어제
    • 분류 전체보기 (93)
      • Algorithm (9)
      • Data Structure (3)
      • Python (7)
      • 컴퓨터 구조 요약 (6)
      • 몰입 교육 (7)
      • JavaScript (1)
      • Vue.js (7)
      • 코딩테스트 연습 (40)
      • SpringBoot (9)
      • 데이터베이스 (2)
  • 블로그 메뉴

    • Home
    • Computer structure
    • Algorithm
    • SpringBoot
    • Vuejs
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    오블완
    MSA 기초
    잔디 기부 캠페인
    티스토리챌린지
    잔디 기부
    Udemy#Python#Bootcamp#Object and Data Structure Basics
    Git
    항해99
    리그오브레전드 #롤 #LOL #60프레임 버그 #GPU #윈도우10 #롤 60프레임 고정
  • hELLO· Designed By정상우.v4.10.3
알파 조
Python Tuple
상단으로

티스토리툴바