DuckingRacoon
zip() 본문
1. zip()의 기본 개념
- 정의: 여러 개의 iterable(리스트, 튜플 등)을 같은 인덱스끼리 묶어 튜플을 생성하는 함수.
- 반환값: zip 객체 (이터레이터), 필요 시 리스트나 튜플로 변환 가능.
a = [1, 2, 3]
b = ['x', 'y', 'z']
z = zip(a, b)
print(list(z)) # [(1, 'x'), (2, 'y'), (3, 'z')]
2. 특징
1. 길이가 다른 iterable일 때
a = [1,2]
b = ['x','y','z']
print(list(zip(a, b))) # [(1,'x'), (2,'y')] → 짧은 쪽 기준
- 가장 짧은 iterable 길이에 맞춰 튜플 생성 종료
2. 여러 iterable 가능
a = [1,2]
b = ['x','y']
c = ['A','B']
print(list(zip(a,b,c))) # [(1,'x','A'), (2,'y','B')]
3. 언패킹(*) 활용 가능
- *를 사용하면 zip된 결과를 다시 풀어 각각의 리스트/튜플로 복원 가능
pairs = [(1,'x'), (2,'y')]
nums, chars = zip(*pairs)
print(nums) # (1, 2) print(chars) # ('x', 'y')'Python' 카테고리의 다른 글
| enumerate() (0) | 2025.08.14 |
|---|---|
| all(...) (1) | 2025.08.14 |
| 언패킹 연산자 * (2) | 2025.08.14 |
| Python의 메모리 모델과 참조 (1) | 2025.08.14 |
| C++ 사용자 입장에서 알아야 할 Python 지식 (6) | 2025.08.14 |