티스토리 뷰

튜플 자료형은 리스트와 비교했을 때 유사한 점이 많다. 그 중 리스트와 차이점이라고 하면 두 가지 정도 있다.

 

  • 리스트는 []로 변수를 선언하지만 튜플은 ()를 사용한다. 
  • 변수값을 세팅하면 값을 변경할 수 없다.

 

튜플의 경우 리스트에 비해 많이 사용되지는 않는다. 왜냐면 보통 프로그래밍을 하다 보면 변수값을 고정시키는 것보다 변수값을 유동적으로 변경할 일이 더 많기 때문이다.

 

튜플의 변수 선언은 아래와 같이한다.

>>> a1 = (1, 2, 3)
>>> type(a1)
<class 'tuple'>
>>> a2 = 1, 2, 3
>>> type(a2)
<class 'tuple'>
>>> 

굳이 ()를 사용안하고 쉼표(,) 연결해서도 튜플을 선언할 수 있다.

 

튜플은 값을 하나면 선언하기 위해서도 무조건 바로 뒤에 쉼표(,)를 붙여야 한다. 그 이유는 아래와 같다.

>>> a1 = 1,
>>> a2 = 1
>>> type(a1)
<class 'tuple'>
>>> type(a2)
<class 'int'>
>>> 

쉼표를 붙이지 않을 경우에는 바로 정수형(int)으로 인지하게 된다. ()로 감싸고 해도 동일한 결과가 나온다.

>>> a1 = (1,)
>>> a2 = (1)
>>> type(a1)
<class 'tuple'>
>>> type(a2)
<class 'int'>
>>> 

 

튜플은 각 인덱싱의 값을 가져오는 방법은 리스트와 동일하다.

>>> a = 1, 2, 3
>>> a[0]
1
>>> a[1:]
(2, 3)
>>> a[0:2]
(1, 2)
>>> 

 

단 위에서 이야기 한 것과 같이 리스트와 다른 점은 값은 수정 및 삭제를 할 수 없는 것이다.

>>> a[0] = 5
Traceback (most recent call last):
  File "<pyshell#24>", line 1, in <module>
    a[0] = 5
TypeError: 'tuple' object does not support item assignment
>>> del a[0]
Traceback (most recent call last):
  File "<pyshell#25>", line 1, in <module>
    del a[0]
TypeError: 'tuple' object doesn't support item deletion
>>> 

지금까지 python 튜플에 대해 확인해 보았다.

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
글 보관함