파이썬

7. 튜플

미스터 한뺑 2022. 7. 28. 15:52
반응형

1. 튜플(Tuple)

리스트랑 비슷한 점은 같은데 몇가지 다른점이 있다.

- 리스트는 대괄호를 쓰지만 튜플은 소괄호를 쓴다

- 리스트는 요소 값의 생성, 삭제,수정이 가능하나 튜플을 요소 값을 바꿀 수 없다.

>>> t1 = ()
>>> t2 = (1,)
>>> t3 = (1, 2, 3)
>>> t4 = 1, 2, 3
>>> t5 = ('a', 'b', ('ab', 'cd'))

리스트와 거의 비슷하지만 튜플은 요소가 한개올때는 뒤에 콤마를 붙어줘야한다. 또한 소괄호를 생략이 가능하다.

얼핏 보면 튜플과 리스트는 비슷한 역할을 하지만 프로그래밍을 할 때 튜플과 리스트는 구별해서 사용하는 것이 유리하다. 튜플과 리스트의 가장 큰 차이는 요솟값을 변화시킬 수 있는가 여부이다. 즉 리스트의 요솟값은 변화가 가능하고 튜플의 요솟값은 변화가 불가능하다. 따라서 프로그램이 실행되는 동안 요솟값이 항상 변하지 않기를 바란다거나 값이 바뀔까 걱정하고 싶지 않다면 주저하지 말고 튜플을 사용해야 한다. 이와는 반대로 수시로 그 값을 변화시켜야할 경우라면 리스트를 사용해야 한다. 실제 프로그램에서는 값이 변경되는 형태의 변수가 훨씬 많기 때문에 평균적으로 튜플보다는 리스트를 더 많이 사용한다.

 

2. 튜플 요소값 삭제

튜플은 한번 정하면 지우거나 변경할수가 없다 !

>>> t1 = (1, 2, 'a', 'b')
>>> t1[0] = 'c'

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: 'tuple' object does not support item assignment

이런 식으로 에러가 난다.

 

3. 튜플 인덱싱

튜플도 문자열이나 리스트같이 인덱싱이 가능하다. 똑같이 인덱싱은 0부터 시작한다. 

>>> t1 = (1, 2, 'a', 'b')
>>> t1[0]
1
>>> t1[3]
'b'

 

4. 튜플 더하기 곱하기

튜플도 더하기와 곱하기가 가능하다

>>> t1 = (1, 2, 'a', 'b')
>>> t2 = (3, 4)
>>> t3 = t1 + t2
>>> t3
(1, 2, 'a', 'b', 3, 4)
>>> t2 = (3, 4)
>>> t3 = t2 * 3
>>> t3
(3, 4, 3, 4, 3, 4)
반응형

'파이썬' 카테고리의 다른 글

9. 집합(SET) - 합집합, 교집합, 차집합  (0) 2022.07.28
8. 딕셔너리 (Dictionary)  (0) 2022.07.28
6. 리스트  (0) 2022.07.28
5. 문자열 자료형(내장함수)  (0) 2022.07.28
4. 문자열 자료형 (문자열 포매팅, f-string)  (0) 2022.07.28