20

for 고급: enumerate와 zip

Day 5: 반복문 & 주간 프로젝트

학습 목표

enumerate로 인덱스와 값을 동시에 얻을 수 있다 zip으로 두 리스트를 병렬 순회할 수 있다

문제 상황 1: 인덱스가 필요해

에디터 로딩 중...

안 좋은 방법:

에디터 로딩 중...

좋은 방법 - enumerate:

에디터 로딩 중...

enumerate = (인덱스, 값) 쌍을 만들어준다


enumerate 활용

에디터 로딩 중...

로그 분석할 때 몇 번째 줄인지 알아야 한다. enumerate가 없으면 직접 카운터를 관리해야 한다.


문제 상황 2: 두 리스트를 같이 순회해야 해

에디터 로딩 중...

안 좋은 방법:

에디터 로딩 중...

좋은 방법 - zip:

에디터 로딩 중...

zip = 여러 리스트를 묶어서 병렬 순회


zip 활용: 데이터 변환

에디터 로딩 중...

이게 바로 실무에서 CSV를 파싱할 때 쓰는 패턴이다.


정리: 언제 뭘 쓸까?

상황사용
단순 순회for item in list:
숫자 범위for i in range(n):
인덱스 필요for i, item in enumerate(list):
두 리스트 병렬for a, b in zip(list1, list2):