Python/Python 정리

[Python] enumerate 이해

우준세 2021. 8. 7. 14:33
728x90
반응형

이번 포스팅은 python에서 enumerate의 이해를 돕기 위해 작성했습니다.


for 루프

- enumerate를 설명하기 전에 python에서 for 루프를 어떻게 사용하는지에 대해 간단하게 설명하겠습니다. 

 

- python에서 for문은 기본적으로 <for item in iterable:>의 형태로 작성되며 iterable은 리스트, 튜플, 문자열 등 순회가 가능한 것이면 대부분 사용 가능하며 item은 iterable가 가지고 있는 원소들이 for문을 돌면서 하나씩 할당되게 되며 인덱스를 가지게 됩니다. 

 

list = ['A', 'B', 'C']

for item in range(len(list)):
	print(item, list[item])

 

결과)

 

- 결과를 보시면 item 순서대로 list에서 설정된 것을 볼 수 있습니다. 

 

 

 

 


enumerate

- 우리는 앞서 했던 for문으로 인덱스와 리스트에서 인덱스에 해당하는 원소를 출력했습니다.

이것을 조금 더 python 스럽게? 표현해보고자 합니다! 

 

- enumerate, 영단어 '열거하다' 그대로 리스트를 열거하는 함수입니다. enumerate를 사용하면 인덱스와 원소를 튜플로 출력을 해줍니다. (인덱스, 원소) 상태로 출력을 해주기 때문에 만약 위 for문처럼 따로 받고 싶다면 item 쪽에 따로 추가해서 출력을 받을 수 있습니다. 

 

예시 코드)

 

list = ['A', 'B', 'C']

for item in enumerate(list):
    print(item)

 

결과)

 

 

- 튜플로 결과를 받는다는 것을 볼 수 있음

 

인덱스와 원소를 따로 받을 때)

list = ['A', 'B', 'C']

for index, item in enumerate(list):
    print(index, item)

 

결과)

 

- for문으로 돌렸을 때와 동일한 결과를 얻었습니다! index와 item을 따로 결과로 받았습니다. 

 

인덱스의 시작을 다르게 할 때)

list = ['A', 'B', 'C']

for index, item in enumerate(list, start = 100):
    print(index, item)

 

결과)

 

 

- enumerate() 안에서 start를 다르게 해 준다면 index의 시작 위치를 조절할 수 있습니다. 

 

 

 

- python의 enumerate 함수에 대해 알아보았습니다.

틀린 점이나 질문이 있으시면 댓글로 남겨주세요!

 

감사합니다 :)

 

 

 

728x90
반응형