티스토리 뷰

개발자 로그/Python

튜플(tuple) 자료형

현 알트만 2024. 9. 6. 21:17

Keyword: 튜플은 immutable, 요소가 하나인 튜플, 튜플 안에 리스트 요소는 변경이 가능, swap

 

1. 튜플은 immutable

 

오늘 살펴볼 자료형은 튜플(tuple)이다. 튜플은 리스트와 비슷한 자료의 유형이지만,(인덱싱, 슬라이싱 등 같은 방법으로 가능) 가장 큰 차이점은 immutable하다는 것이다. 즉, 튜플은 리스트와 다르게 요소를 변경할 수 없다.

 

위 예시를 살펴보면  b라는 튜플을 선언한 뒤, 튜플의 1번 인덱스를 8로 변경하려고 하자, "튜플의 개별 요소는 수정할 수 없다."라는 오류가 뜨는 것을 확인할 수 있다.

 

2. 요소가 하나인 튜플

 

요소가 하나인 튜플을 만들기 위해서는 ','를 추가해야 한다. 그냥 단순히 "(요소)"는 요소의 타입으로 여겨진다. 예를 들어 요소가 int형이면 int의 값이 변수에 입력되는 것이다. 따라서 하나의 튜플을 만들기 위해서는 "(요소,)"나 "요소,"의 형태로 입력해야 한다. 

 

3. 튜플 안에 리스트 요소는 변경 가능

 

튜플은 immutable하지만, 튜플 안에 있는 리스트는, 리스트인만큼 mutable하다. 따라서, 해당 리스트 안의 요소의 값은 수정이 가능하다. 위 예시를 살펴보면 t라는 튜플의 끝에 리스트 자료형이 들어있는 것을 확인할 수 있다. 인덱싱을 통해 해당 리스트 0번째 인덱스 위치에 접근하여 10으로 값을 수정한 것으로 볼 수 있다. 출력 결과 1이 10으로 수정된 것이 확인된다.

 

4. swap

 

swap은 어떠한 것과 어떠한 것을 맞바꾸는 것을 의미한다. 일반적으로 두 변수의 값을 맞교환하기 위해서는 하나의 변수가 더 필요하다. 보통 이를 temp라는 변수명으로 표현하는데, 바꾸기 전에 다른 한 값을 임시 저장하는 공간이다. 그러나, 파이썬은 보다 직관적으로 swap이 가능하다. 위 예시를 살펴보면, "a, b = b, a"라는 간단한 코드한 줄로, a와 b의 값이 변경된 것을 확인할 수 있다. 

'개발자 로그 > Python' 카테고리의 다른 글

딕셔너리(dictionary) 자료형  (0) 2024.09.06
집합(set) 자료형  (1) 2024.09.06
리스트(List) 자료형  (0) 2024.09.05
문자열 자료형(2)  (0) 2024.09.05
문자열 자료형(1)  (1) 2024.09.04