WinGyu_coder

Python 으로 객체 및 리스트 관리 Enumerate 와 zip 사용 방법 본문

Python파이썬

Python 으로 객체 및 리스트 관리 Enumerate 와 zip 사용 방법

WinGyu 2023. 9. 20. 10:35

enumeratezip은 파이썬에서 리스트와 같은 이터러블 객체를 처리할 때 자주 사용되는 유용한 내장 함수들입니다.

1. enumerate

enumerate는 이터러블 객체를 입력으로 받아, 각 항목과 그 항목의 인덱스를 순서대로 반환하는 이터레이터를 생성합니다.

기본 구조:

enumerate(iterable, start=0)
  • iterable: 인덱스와 함께 열거하려는 이터러블 객체 (예: 리스트, 문자열, 튜플 등)
  • start: 인덱스의 시작 값을 지정 (기본값은 0)

예제:

fruits = ['apple', 'banana', 'cherry']

for idx, fruit in enumerate(fruits):
    print(idx, fruit)

출력:

0 apple
1 banana
2 cherry

2. zip

zip 함수는 두 개 이상의 이터러블 객체의 항목들을 "짝지어" 튜플 형태로 반환하는 이터레이터를 생성합니다. 반환되는 이터레이터의 길이는 입력으로 제공된 이터러블 객체들 중 가장 짧은 길이를 가진 객체의 길이와 같습니다.

기본 구조:

zip(*iterables)
  • *iterables: 짝지어서 반환할 이터러블 객체들

예제:

fruits = ['apple', 'banana', 'cherry']
colors = ['red', 'yellow', 'dark red']

for fruit, color in zip(fruits, colors):
    print(fruit, "is", color)

출력:

apple is red
banana is yellow
cherry is dark red

enumeratezip을 함께 사용하면, 여러 이터러블 객체의 항목과 그 항목의 인덱스를 동시에 처리할 수 있습니다:

fruits = ['apple', 'banana', 'cherry']
colors = ['red', 'yellow', 'dark red']

for idx, (fruit, color) in enumerate(zip(fruits, colors)):
    print(idx, fruit, "is", color)

출력:

0 apple is red
1 banana is yellow
2 cherry is dark red

이러한 방식으로 enumeratezip을 활용하면 다양하고 복잡한 데이터 구조를 쉽게 처리할 수 있습니다.