enumerate() 함수
인덱스(index)와 원소를 동시에 접근하면서 루프를 돌릴 방법
for 문의 in 뒷 부분을 enumerate() 함수로 한 번 감싸주기만 하면 됩니다.
>>> for entry in enumerate(['A', 'B', 'C']):
... print(entry)
...
(0, 'A')
(1, 'B')
(2, 'C')
enumerate() 함수는 기본적으로 인덱스와 원소로 이루어진 튜플(tuple)을 만들어줍니다.
따라서 인덱스와 원소를 각각 다른 변수에 할당하고 싶다면 인자 풀기(unpacking)를 해줘야 합니다.
>>> for i, letter in enumerate(['A', 'B', 'C']):
... print(i, letter)
...
0 A
1 B
2 C
시작 인덱스 변경
루프를 돌리다보면 인덱스를 0이 아니라, 1로 시작하고 싶을 때가 있습니다. 이럴 때는 enumerate() 함수를 호출할 때 start 인자에 시작하고 싶은 숫자를 넘기면 됩니다.
>>> for i, letter in enumerate(['A', 'B', 'C'], start=1):
... print(i, letter)
...
1 A
2 B
3 C
>>> for i, letter in enumerate(['A', 'B', 'C'], start=101):
... print(i, letter)
...
101 A
102 B
103 C
'코테 공부 > python' 카테고리의 다른 글
Python 자료형의 boolean (0) | 2023.05.25 |
---|---|
Python 최빈값 관련 의문- 해결 (3) | 2023.05.25 |
Python 예약어 del, 함수 remove() (0) | 2023.05.24 |
Python 최빈값 collections 모듈의 Counter 클래스, 안풀린 로직 (0) | 2023.05.24 |
Python divmod(num1, num2)[0 또는 1] (0) | 2023.05.24 |