list나 set, tuple 그리고 dictionary에서 iterable의 원소와 해당 인덱스를 함께 활용하여 코딩을 하는 경우가 많다. 이러한 경우에 enumerate 함수를 활용할 수 있다. 아래의 코드를 보자.
list_ex = ['a','b','c','d','e']
enum = enumerate(list_ex)
print(enum) # result : <enumerate object at 0x7fede1d803c0>
enumerate 함수는 list, tuple, string 등의 iterable 객체를 인자로 받으며, 결과값으로 enumerate라는 iterable 객체를 리턴한다. (참고로 enumerate객체도 iterable이므로, enumerate(enumerate객체) 도 가능하다 ㅋㅋ)
enumerate객체는 iterable의 인덱스와 원소를 순차적으로 저장하는데, 반복문을 통해 enumerate를 활용할 수 있다. 실제로 enumerate 함수는 일반적으로 for문과 함께 사용되는데, 아래의 활용 예시를 보자.
list_ex = ['a','b','c','d','e']
# 일반적인 방법
index = 0
for elem in list_ex:
print(f'{index} : {elem}') # f-string 이라는 강력한 표현 방법이다.
index += 1
# enumerate 함수를 이용한 방법
for index, elem in enumerate(list_ex):
print(f'{index} : {elem}')
따로 index 변수를 생성하여 활용할 필요도 없고, 코드도 간단하니 여러 모로 장점이 많다.
'파이썬(Python) > 문법 내용정리' 카테고리의 다른 글
| Generator (제너레이터) (0) | 2021.01.28 |
|---|---|
| F-string (가장 강력한 print 방법) (0) | 2021.01.28 |
| Comprehension (List, Set, Dict) (0) | 2021.01.24 |
| Lambda Function (람다 함수) (0) | 2021.01.24 |
| Sorted 함수 (0) | 2021.01.23 |
댓글