enumerate가 넘겨주는 각 쌍을 for 문에서 간결하게 언패킹할 수 있다(Better way 6: ‘인덱스를 사용하는 대신 대입을 사용해 데이터를 언패킹하라’ 참고). 이로써 코드가 훨씬 깔끔해진다.
for i, flavor in enumerate(flavor_list): print(f'{i + 1}: {flavor}') >>> 1: 바닐라 2: 초콜릿 3: 피칸 4: 딸기
enumerate의 두 번째 파라미터로 어디부터 수를 세기 시작할지 지정할 수 있다(다음 코드에서는 1). 이를 활용하면 코드를 더 깔끔하게 만들 수도 있다.
for i, flavor in enumerate(flavor_list, 1): print(f'{i}: {flavor}')
기억해야 할 내용
• enumerate를 사용하면 이터레이터에 대해 루프를 돌면서 이터레이터에서 가져오는 원소의 인덱스까지 얻는 코드를 간결하게 작성할 수 있다.
• range에 대해 루프를 돌면서 시퀀스의 원소를 인덱스로 가져오기보다는 enumerate를 사용하라.
• enumerate의 두 번째 파라미터로 어디부터 원소를 가져오기 시작할지 지정할 수 있다(디폴트 값은 0이다).