[Python] 파이썬 enumerate 예제 및 사용방법 총정리
파이썬은 enumerate 클래스를 사용하여 iterable 자료형의 데이터를 인덱스 번호를 매겨서 값과 함께 가져올 수 있습니다. iterable은 반복 가능한 객체를 의미합니다. for in 문 형식에서 enumerate클래스를 활용합니다.
enumerate 클래스의 정보를 한번 살펴봅니다.
class enumerate(object):
........생략
def __init__(self, iterable, start=0): # known special case of enumerate.__init__
""" Initialize self. See help(type(self)) for accurate signature. """
pass
for in문을 사용하여 list 결과를 출력해봅니다. enumerate클래스의 인덱스 시작값은 0입니다.
list = ["오렌지", "귤", "바나나", "포도", "복숭아"]
for item in enumerate(list):
print(item)
#실행결과
(0, '오렌지')
(1, '귤')
(2, '바나나')
(3, '포도')
(4, '복숭아')
for문에 변수 2개를 사용하여 index와 value 값을 받을 수 있습니다. enumerate클래스는 인자값으로 start변수를 받고 있습니다. 인덱스의 시작값을 설정할 수 있습니다.
list = ["오렌지", "귤", "바나나", "포도", "복숭아"]
for idx, val in enumerate(list):
print("idx:", idx, " val:", val)
print("--- 시작 인덱스 값 변경 ", '-'*20)
for idx, val in enumerate(list, start=1):
print("idx:", idx, " val:", val)
#실행결과
idx: 0 val: 오렌지
idx: 1 val: 귤
idx: 2 val: 바나나
idx: 3 val: 포도
idx: 4 val: 복숭아
--- 시작 인덱스 값 변경 --------------------
idx: 1 val: 오렌지
idx: 2 val: 귤
idx: 3 val: 바나나
idx: 4 val: 포도
idx: 5 val: 복숭아
튜플(tuple) 자료형 역시 iterable이 가능한 자료형입니다. 그럼으로 enumerate를 사용하여 처리할 수 있습니다.
tuple_val = ("오렌지", "귤", "바나나", "포도", "복숭아")
for idx, val in enumerate(tuple_val):
print("idx:", idx, " val:", val)
#실행결과
idx: 0 val: 오렌지
idx: 1 val: 귤
idx: 2 val: 바나나
idx: 3 val: 포도
idx: 4 val: 복숭아
[REFERENCE]
[파이썬 더 알아보기]