티스토리 뷰

Python/Python

[Python]enumerate() 내장함수

Vagabund.Gni 2023. 5. 21. 13:22
728x90
반응형

파이썬으로 알고리즘을 풀다가 enumerate()라는 내장함수를 만나게 되었다.

 

이 함수의 역할은 순회 가능한(iterable) 객체(리스트, 튜플, 문자열 등)를 입력받아

 

인덱스와 해당 요소를 동시에 포함하는 iterator를 반환한다.

 

이를 이용해 반복문에서 인덱스와 요소를 동시에 다룰 수 있으며, 필요하다면 딕셔너리와 같은 자료형으로

 

매핑할 수도 있다. 바로 코드로 예를 들어보자.

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

# 리스트의 인덱스와 값을 출력
for index, fruit in enumerate(fruits):
    print(index, fruit)
0 apple
1 banana
2 orange

시작 인덱스를 0이 아닌 1로 지정하는 것도 가능하다.

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

# 시작 인덱스를 0이 아닌 1로 지정
for index, fruit in enumerate(fruits, start=1):
    print(index, fruit)
1 apple
2 banana
3 orange

계속해서 해당 인덱스와 값을 이용해 이차원 배열을 생성할 수도 있다.

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

# enumerate를 이용해 이차원 리스트로 변환
enumerated_list = list(enumerate(fruits))

print(enumerated_list)
[(0, 'apple'), (1, 'banana'), (2, 'orange')]

딕셔너리로 만들기 위해서는 아래와 같이 처리해 주면 된다.

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

# enumerate를 이용해 딕셔너리 생성
enumerated_dict = {index: fruit for index, fruit in enumerate(fruits)}

print(enumerated_dict)
{1: 'apple', 2: 'banana', 3: 'orange'}
반응형
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/06   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30
글 보관함