관리 메뉴

DuckingRacoon

zip() 본문

Python

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