12.5 리스트와 튜플
zip은 두 개 이상의 시퀀스를 받아서 각 시퀀스의 원소를 하나씩 담은 튜플로 된 튜플들의 리스트를 반환하는 내장 함수다. zip 함수의 이름은 지퍼(zipper)에서 왔는데, 지퍼는 두 줄로 된 각 이빨이 맞물리며 동작하기 때문이다.
이 예제는 문자열과 리스트를 지퍼처럼 맞물려 준다(이후엔 간단히 ‘집한다’고 하겠다).
>>> s = 'abc'
>>> t = [0, 1, 2]
>>> zip(s, t)
<zip object at 0x7f7d0a9e7c48>
이 코드를 실행한 결과는 각 쌍을 반복할 수 있는 집 객체(zip object)가 된다. 가장 일반적인 zip 사용법은 for 루프에 사용하는 것이다.
>>> for pair in zip(s, t):
... print(pair)
...
('a', 0)
('b', 1)
('c', 2)