[Python] zip()

Artiper
|2024. 2. 16. 11:52

zip 함수 형태

zip(*iterables, strict=False)

여러 interable 오브젝트에 대해 병렬적으로 반복하여, 각 iterable오브젝트에서 나온 항목을 가진 tuple을 생성한다. 

 

>>> for item in zip([1, 2, 3], ['sugar', 'spice', 'everything nice']):
...     print(item)
...
(1, 'sugar')
(2, 'spice')
(3, 'everything nice'

좀 더 딱딱하게 설명하자면, zip()은 튜플에 대한 iterator를 반환하고, i 번째 튜플은 각 매개변수 iterable의 i 번째 요소를 포함한다.

 

고려해야 할 한 가지 사항은 zip()에 전달되는 iterable의 길이가 다를 수 있다. 

 

 

3개 이상의 iterable

numbers = [1, 2, 3]
letters = ["A", "B", "C"]
third = ['a', 'b', 'c']

zipped = zip(numbers, letters, third)
zipped = list(zipped)
print(zipped)
[(1, 'A', 'a'), (2, 'B', 'b'), (3, 'C', 'c')]
3
<class 'tuple'>

 

 

 

 

참고자료