deque = []
deque.append((1, 2))
y, x = deque.pop(0)
deque
리스트에 **(1, 2)
**와 같은 형태의 튜플을 추가하고, pop(0)
메소드를 사용하여 첫 번째 요소를 꺼내올 때, **x
**와 y
변수에 각각의 값을 저장하는 것은 파이썬의 언패킹(Unpacking) 기능을 활용한 것입니다.
파이썬에서는 튜플이나 리스트와 같은 시퀀스 객체를 언패킹하여 여러 개의 변수에 값을 할당할 수 있습니다. 언패킹은 시퀀스 객체의 요소들을 개별 변수에 할당하는 것을 의미합니다.
따라서, **y, x = deque.pop(0)
**는 **deque.pop(0)
**으로 꺼낸 튜플의 첫 번째 요소를 **x
**에, 두 번째 요소를 **y
**에 각각 할당하는 것을 의미합니다. 이를 통해 변수 **x
**와 **y
**에 각각의 값을 저장할 수 있습니다.
언패킹은 시퀀스 객체의 길이와 할당받는 변수의 개수가 일치해야 합니다. 예를 들어, 튜플의 요소 개수와 변수의 개수가 다르면 **ValueError
**가 발생합니다.
따라서, **x
**와 y
변수에 값을 저장하기 위해 따로 map
함수를 사용하지 않고도 언패킹을 활용하여 튜플의 요소를 개별 변수에 할당할 수 있는 것입니다.