반복자를 사용할 때 반복자의 항목 수를 추적해야 합니다. 이것은 enumerate()라는 내장 메소드에 의해 달성됩니다. enumerate() 메서드는 iterable에 카운터를 추가합니다. 반환된 개체는 열거 개체입니다. 구문과 매개변수는 아래에 설명되어 있습니다.
enumerate(iterable, start=0) iterable - a sequence, an iterator, or objects that supports iteration start – is the position in the iterator from where the counting starts. Default is 0.
예
아래의 예에서 우리는 사전을 가져와서 enumerate를 적용합니다. 결과에서 기본 시작은 0이며 카운터 값을 0으로 시작하여 결과를 인쇄합니다. 기본 시작 값을 5로 변경하고 개수는 동일하게 유지되지만 다른 결과를 볼 수도 있습니다.
days= { 'Mon', 'Tue', 'Wed','Thu'} enum_days = enumerate(days) print(type(enum_days)) # converting it to alist print(list(enum_days)) # changing the default counter to 5 enum_days = enumerate(days, 5) print(list(enum_days))
출력
위의 코드를 실행하면 다음과 같은 결과가 나옵니다. -
[(0, 'Tue'), (1, 'Thu'), (2, 'Mon'), (3, 'Wed')] [(5, 'Tue'), (6, 'Thu'), (7, 'Mon'), (8, 'Wed')]
열거에 루프 사용
루핑을 위한 코드를 사용하고 아래 코드와 같이 루프의 요소를 별도로 인쇄할 수도 있습니다.
예시
days= { 'Mon', 'Tue', 'Wed','Thu'} enum_days = enumerate(days) # enumearte using loop for enum_days in enumerate(days): print(enum_days) for count,enum_days in enumerate(days,5): print(count,enum_days)
출력
위의 코드를 실행하면 다음과 같은 결과가 나옵니다. -
(0, 'Thu') (1, 'Tue') (2, 'Wed') (3, 'Mon') 5 Thu 6 Tue 7 Wed 8 Mon