이번 포스팅은 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 함수에 대해 알아보았습니다.
틀린 점이나 질문이 있으시면 댓글로 남겨주세요!
감사합니다 :)
'Python > Python 정리' 카테고리의 다른 글
[Python] filter() 함수 정리 (0) | 2022.06.08 |
---|---|
[Python] zip() 이해 (0) | 2022.04.28 |
[Python] self 이해 (0) | 2021.07.29 |
[Python] ID 함수 정리 (0) | 2021.07.26 |
[Python] Lambda(람다) 표현식 (0) | 2021.07.01 |