728x90

기본 문법
numbers = [1, 2, 3]
letters = ["A", "B", "C"]
# zip 사용
for pair in zip(numbers, letters):
print(pair)
print('\n')
# 병렬 처리
for number, upper, lower in zip("12345", "ABCDE", "abcde"):
print(number, upper, lower)
print('\n')
# unzip
pairs = list(zip(numbers, letters))
print(pairs)
numbers, letters = zip(*pairs)
print(numbers)
print(letters)
numbers = list(numbers)
letters = list(letters)
print(numbers)
print(letters)
print('\n')
# Dictionary로 변환
print(dict(zip(numbers, letters)))

- iterable 객체를 인자로 받아 iterator를 반환
- 여러 List를 순서대로 쌍으로 묶어줌
- string은 하나씩 처리됨
- *을 붙이면 unzip 할 수 있음 (이 경우 list로 변환이 필요)
- dictionary로 바로 변환할 수 있음 (길이가 다를 경우 짧은 놈 기준. 나머지는 무시됨)
참조
- DaleSeo 님의 블로그
반응형
'Languages > Python' 카테고리의 다른 글
| [파이썬 101] 정규표현식 (0) | 2022.05.30 |
|---|---|
| [파이썬 101] 문자열 매칭 메소드 (in, find, rfind, index, rindex startswith, endswith) (0) | 2022.05.28 |
| [파이썬 101] 해시(Hash) (0) | 2022.05.24 |
| [파이썬 101] 파이썬의 컨테이너 (List, Dictionary, Set, Tuple) (0) | 2022.05.24 |
| [파이썬 라이브러리] Collections 모듈의 Counter 클래스 (0) | 2022.05.23 |