[Python, 기초 문법] 자료형(Data Type)(5) - Tuple, 다양한 사용법



이전 시간에는 Tuple의 개념에 대해,

그리고 List와의 공통점, 차이점에 대해 알아보았습니다.


이번 시간에는 Tuple의 다양한 쓰임에 대해 알아보겠습니다.



튜플의 생성


이전 시간에서도 알아 본 것 처럼,

튜플은 소괄호( () ) 안에 값을 입력해주면 생성됩니다.


type((1,2,3))
tuple


소괄호를 씌우지 않고도

숫자나 문자를 쉼표를 통해 나열하는 방식으로 튜플을 생성할 수도 있습니다.

a = 1,2,3,"사",[5]
print(a)
(1,2,3,"사",[5])


비록 튜플 안의 내용물은 바꿀 수 없지만,

튜플 끼리의 더하기 연산,

혹은 튜플의 곱하기 연산으로 새로운 튜플을 생성할 수 있습니다.

더하기를 할 경우 튜플 끼리 합쳐져서 나타나며,

곱하기 연산은 튜플과 int형 숫자를 입력해 동일한 튜플 내용물을 반복시켜 새로운 튜플로 만듭니다.


a = (1, 2) + (3, 4, 5)
b = (10, 11, 12) * 2
print(a)
print(b)
(1, 2, 3, 4, 5)
(10, 11, 12, 10, 11, 12)



튜플의 함수


특정 값이 몇 번째 위치에 있는 지,

혹은 특정 값이 몇 개 있는 지 확인할 수 있는 함수를 공통적으로 가지고 있습니다.

index와 count 함수인데,

변수안에 특정 자료형의 값을 넣고 <변수>.<함수>(<값>) 형태로 입력하거나,

자료형 데이터 그 자체에 함수를 달아서 사용할 수도 있습니다.


a = (1, 2, 3, 1, 2, 3)
print(a.count(3))
print((2,2,2,100).index(100))
 2
 3



튜플 to 딕셔너리, 딕셔너리 to 튜플


튜플은 내부 요소를 수정, 삭제할 수없다는 특성을 가지고 있어,

데이터를 보관, 조회할 때 자주 사용되는 자료형입니다.


조회할 때 사용한다는 점에 딕셔너리와 일맥상통한 점이 있어,

자료형을 변환한다고 하면 위의 두 자료형이 자주 활용 되곤 합니다.


이후에도 알아보겠지만, 일단 딕셔너리 데이터의 주요 요소들을 빼올 때

items라는 함수를 사용하게 되는데, items의 반환되는 값은

리스트로 쌓여 있는 튜플 집합입니다.


a = {0:"지구", 1:"안드로메다"}
a.items()
dict_items([(0, '지구'), (1, '안드로메다')])


이를 활용한다면, 리스트+ 튜플 조합을 통해

딕셔너리를 만들어 볼 수도 있겠습니다.


a = [(0, "알파"), (1, "베타")]
dict(a)
{0: '알파', 1: '베타'}




지금까지 튜플의 다양한 활용법에 대해 알아보았습니다.

다음 포스트에선 데이터 묶음 형태의 자료형 중 하나인 Set에 대해 알아보겠습니다.

댓글