파이썬에서 Enumerate란 무엇인가?
Python Enumerate() 는 파이썬 라이브러리에서 사용할 수 있는 기본 제공 함수입니다.
주어진 입력을 컬렉션 또는 튜플로 가져와 열거(Enumerate) 객체로 반환합니다. Python Enumerate() 명령은 반복 가능한 개체의 각 항목에 카운터를 추가하고 열거형 개체를 출력 문자열로 반환합니다.
목차
Enumerate() 구문
enumerate(iterable, startIndex)
매개변수
Enumerate()에는 두가지 매개변수가 있습니다.
- Iterable : 반복할 수 있는 개체입니다.
- StartIndex : (선택 사항) 개수는 루프의 첫 번째 항목에 대해 startIndex에 제공된 값으로 시작하고 루프의 끝에 도달할 때까지 다음 항목에 대해 증가합니다.
지정하지 않으면 카운트는 0부터 시작 됩니다.
반환값:
입력으로 제공된 반복기(Iterable) 개체에 대한 각 항목에 대한 카운트 값과 함께 반복(Iterable) 가능한 개체를 반환합니다.
Enumerate() 예제
Enumerate 메서드는 파이썬의 Enumerate 목록에 있는 각 항목에 대한 자동 카운터/인덱스와 함께 제공됩니다.
첫번째 인덱스 값은 0부터 시작합니다. enumerate에서 선택적 매개변수 startIndex를 사용하여 인덱스의 시작점을 지정할 수도 있습니다.
예시
아래 코드에서 mylist는 Python의 Enumerate 함수에 지정된 목록입니다. list() 함수는 Enumerate Python 출력을 표시하는 데 사용됩니다.
참고: startIndex가 사용되지 않으므로 첫 번째 항목의 색인은 0부터 시작합니다.
enumerate의 출력은 다음과 같습니다.
(0, item_1), (1, item_2), (2, item_3), … (n, item_n)
File: python_enumerate.py
mylist = ['A', 'B' ,'C', 'D']
e_list = enumerate(mylist)
print(list(e_list))
출력:
[(0, 'A'), (1, 'B'), (2, 'C'), (3, 'D')]
startIndex가 있는 목록(list)에서 Enumerate() 사용
아래 예에서 startindex는 2로 지정됩니다. 첫 번째 항목의 인덱스는 지정된 startindex에서 시작됩니다.
예시 :
아래 예에서 mylist는 열거하기 위해 제공된 리스트입니다. list() 함수는 열거 출력을 표시하는 데 사용됩니다.
mylist = ['A', 'B' ,'C', 'D']
e_list = enumerate(mylist,2)
print(list(e_list))
출력 :
[(2, 'A'), (3, 'B'), (4, 'C'), (5, 'D')]
Enumerate 객체에 대한 루핑
예제는 startIndex가 있거나 없는 개체를 열거하는 방법을 보여줍니다.
- 첫 번째 for 루프에는 startIndex가 없으므로 인덱스는 0부터 시작합니다.
- 두 번째 for 루프의 startIndex는 10이므로 인덱스는 10부터 시작합니다.
예시:
mylist = ['A', 'B' ,'C', 'D']
for i in enumerate(mylist):
print(i)
print("\n")
print("Using startIndex as 10")
for i in enumerate(mylist, 10):
print(i)
print("\n")
출력:
(0, 'A')
(1, 'B')
(2, 'C')
(3, 'D')
Using startIndex as 10
(10, 'A')
(11, 'B')
(12, 'C')
(13, 'D')
튜플 열거
아래 예에서는 열거형 내부에 튜플을 사용할 수 있습니다. startIndex를 사용할 수도 있으며 각 항목의 키는 주어진startIndex에서 시작됩니다.
기본적으로 startIndex는 0입니다. 따라서 항목 A에 대해 키가 0으로 표시되고 B에 대해 1이 표시되는 식입니다.
예시:
my_tuple = ("A", "B", "C", "D", "E")
for i in enumerate(my_tuple):
print(i)
출력:
(0, 'A')
(1, 'B')
(2, 'C')
(3, 'D')
(4, 'E')
문자열 열거
Python에서 문자열은 배열이므로 반복할 수 있습니다. enumerate()에 문자열을 전달하면 출력에 문자열의 각 문자에 대한 인덱스와 값이 표시됩니다.
예시 :
my_str = "Entity01 "
for i in enumerate(my_str):
print(i)
출력:
(0, 'E')
(1, 'n')
(2, 't')
(3, 'i')
(4, 't')
(5, 'y')
(6, '0')
(7, '1')
(8, ' ')
딕셔너리 열거
파이썬에서 사전은 중괄호 안에 나열되며 이 중괄호 안에 값이 선언됩니다.
각 요소는 키/값 쌍이며 쉼표로 구분됩니다. enumerate() 내부에서 딕셔너리를사용하고 출력을 볼 수 있습니다.
my_dict = {"a": "PHP", "b":"JAVA", "c":"PYTHON", "d":"NODEJS"}
for i in enumerate(my_dict):
print(i)
출력:
(0, 'a')
(1, 'b')
(2, 'c')
(3, 'd')
열거(Enumerate) 사용의 장점
다음은 Python에서 Enumerate를 사용할 때의 장단점입니다.
- 열거를 사용하면 목록, 튜플, 사전, 문자열을 반복할 수 있고 인덱스와 함께 값을 제공할 수 있습니다.
- for 루프를 사용하여 인덱스 값을 얻으려면 list.index(n)을 사용할 수 있습니다. 그러나 list.index(n)은 for-loop를 두 번 트래버스하므로 매우 비쌉니다. Enumerate는 색인과 항목을 한 번에 제공하므로 이러한 경우에 매우 유용합니다.
요약
- Enumerate() 함수는 파이썬에서 사용할 수 있는 내장 함수입니다. Enumerate() 함수는 반복 가능한 개체의 각 항목에 카운터를 추가하고 열거형 개체를 반환합니다.
- Python의 열거에서 startIndex, 즉 값을 시작하려는 카운터를 지정할 수 있습니다.
- 열거형을 사용하여 목록, 튜플, 사전 및 문자열을 반복할 수 있습니다.
- 열거형은 목록, 튜플, 사전 등을 반복할 때 인덱스와 값을 원할 때 매우 유용합니다.
- 열거는 목록에 있는 각 항목에 대한 자동 카운터/인덱스와 함께 제공됩니다. 첫 번째 인덱스 값은 0부터 시작합니다. enumerate에서 선택적 매개변수인 startIndex를 사용하여 startindex를 지정할 수도 있습니다.
- enumerate()에 문자열을 전달하면 출력에 문자열의 각 문자에 대한 인덱스와 값이 표시됩니다.
'초보자를 위한 Python > 5. Python 함수' 카테고리의 다른 글
5.14 파이썬 type() 및 isinstance() 예제 (0) | 2022.11.03 |
---|---|
5.13 파이썬 time.sleep() : 코드 진행의 지연 (예제) (0) | 2022.11.02 |
5.11 파이썬 컬렉션의 카운터(Counter) (0) | 2022.10.27 |
5.10 파이썬 큐(Queue) : FIFO, LIFO 예제 (0) | 2022.10.26 |
5.9 파이썬 Yield 함수 : Generator & Yield vs Return 예제 (0) | 2022.10.25 |
댓글