enumerate는 열거하다라는 단어이다. 파이썬에서는 List
, Tuple
, String
등 여러가지 자료형을 입력받으면 인덱스 값을 포함하는 enumerate 객체
를 돌려준다.
보통 enumerate 함수
는 for문
과 함께 자주 사용한다. 예를들어 아래와 같이 [‘hong’, ’gil’ , ’dong’]
이라는 리스트가 있다고 할때 이것을 enumerate를 사용해 열거를 하면 다음과 같은 값이 나온다.
a = ['hong','gil','dong']
b = list(enumerate(randomlist))
c = dict(enumerate(randomlist))
print(b)
print(c)
'''
결과
'''
[(0, 'hong'), (1, 'gil'), (2, 'dong')]
{0: 'hong', 1: 'gil', 2: 'dong'}
위와 같이 인덱스와 값이 같이 출력되는 것을 알 수 있다 . 위의 코드를 for 문을 사용한 코드는 다음과 같다
a = ['hong','gil','dong']
b = []
c = {}
for i in range(len(a)) :
b.append((i,a[i]))
c[i] = a[i]
print(b)
print(c)
'''
결과
'''
[(0, 'hong'), (1, 'gil'), (2, 'dong')]
{0: 'hong', 1: 'gil', 2: 'dong'}
for문과 enumerate 를 같이 사용해보자
a = ['hong','gil','dong']
b = []
c = {}
for i,name in enumerate(a):
b.append((i,name))
c[i] = a[name]
print(b)
print(c)
'''
결과
'''
[(0, 'hong'), (1, 'gil'), (2, 'dong')]
{0: 'hong', 1: 'gil', 2: 'dong'}