파이썬의 집합 데이터 타입
list 순서 있음. 중복 허용. mutable
tuple 순서 있음. 중복 허용. immutable
set 순서 없음. 중복 허용 안 함.
dict 순서 없음. key와 value 쌍으로 구성.
tuple
콤마로 구분된 집합 데이터 타입이다.
원소 값은 immutable 한 값이기 때문에 list와 달리 원소 값을 변경할 수 없다는 게 특징이다.
따라서 주로 변경되지 말아야 할 데이터들을 저장할 때나, 복수의 값을 전달하는 목적으로 자주 쓰인다.
보통 튜플은 리스트와 비교하기 위해 ()로 선언하여 많이 쓰지만,
사실 ()가 없어도 콤마로 구분되어 있는 데이터 값들이면 튜플로 인식한다.
가장 중요한 점은 콤마(,)가 있어야 한다는 것이다.
In [1]에서 보면 ()로 감싸 져 있음에도 문자열로 인식된다.
In [2]에서는 뒤에 콤마가 있기 때문에 튜플로 인식한다.
animals = ('dog',)도 튜플로 될 것이다.
튜플도 리스트와 마찬가지로 index 값을 사용할 수 있고, slice가 가능하다.
앞 전에 튜플 내 데이터 값은 immutable 한 값이므로 변경이 불가능하다고 하였다.
animals 튜플의 0번째 원소를 변경하려 했으나 TypeError가 발생하여 변경되지 않는 걸 확인할 수 있다.
tuple 원소 추가
튜플의 값은 +와 * 연산을 이용해 추가할 수 있다.
원래 immutable이라 변경이 되지 않으나 이렇게 덮어쓰기 하는 것은 가능하다.
count()
count() 함수를 쓰면 자신이 찾는 값이 튜플 내에서 몇 개 있는지 알 수 있다.
복수 개의 변수에 한 번에 여러 값 저장하기
tuple 관련 함수
https://www.w3schools.com/python/python_ref_tuple.asp