[Python] zip, zip_longest
zip
Python에서 여러가지 컨테이너를 순회하고 싶을 때 사용하는 함수다.
Example
xpts = [1, 5, 4, 2, 10, 7]
ypts = [101, 78, 37, 15, 62, 99]
for x, y in zip(xpts,ypts):
print(x, y)
| 1 101 5 78 4 37 2 15 10 62 7 99 |
a = [1, 2, 3]
b = ['w', 'x', 'y', 'z']
for i in zip(a,b):
print(i)
| (1, ‘w’) (2, ‘x’) (3, ‘y’) |
위 코드는 만약 각 컨테이너의 길이가 다를 경우 어떻게 되는지 보여준다.
zip_longest
from itertools import zip_longest
for i in zip_longest(a,b):
print(i)
| (1, ‘w’) (2, ‘x’) (3, ‘y’) (None, ‘z’) |
만약 긴 쪽을 기준으로 묶고 싶을 경우엔 zip_longest 를 사용하면 된다.