실행 결과
Summer 0
John 1
Justin 1
Mike 1
May 2
Kim 3
Jerry 0
Tom 1
잠깐만요
파이썬의 튜플
프로그램 15-2에서는 처리해야 할 사람 이름과 친밀도를 같이 묶어서 큐에 보관하기 위해 파이썬의 튜플(tuple) 기능을 활용하였습니다. 튜플은 여러 개의 정보를 묶어서 하나의 정보처럼 사용하기 위한 기능으로 수학에서 x 좌표와 y 좌표를 묶어서 순서쌍 (x, y)로 표현하는 것과 비슷한 개념입니다.
튜플로 묶어서 보관하고자 하는 정보가 있다면 소괄호 안에 쉼표(,)를 찍어 나열하면 됩니다. 손쉽게 활용할 수 있겠죠?
>>> t = (3, 7) # 3과 7을 하나로 묶어 튜플 t에 저장합니다.
>>> t
(3, 7)
>>> t[0] # 튜플 t의 첫 번째 정보 값
3
>>> t[1] # 튜플 t의 두 번째 정보 값
7
>>> (x, y) = t # 튜플 t 안의 값들을 변수 x와 y에 각각 저장합니다.
>>> x
3
>>> y
7
프로그램 15-2를 예로 들어 볼까요? qu.append((start, 0))에서 소괄호가 두 번 사용된 이유는 append() 함수의 인자로 start와 0을 묶어 만든 튜플 (start, 0)을 전달했기 때문입니다.
또한 (p, d) = qu.pop(0)은 이렇게 저장된 튜플을 꺼내서 사람 이름과 친밀도 정보를 각각 p와 d에 나누어서 저장한다는 뜻입니다.