리스트의 인덱스는 항상 0부터 시작하기 때문에 인덱스 범위는 0~(리스트 길이 - 1)입니다. spending 리스트도 길이는 6이지만, 인덱스는 0부터 5까지입니다. 이를 range() 명령어에 활용할 수 있습니다. range(종료 숫자)는 자동으로 0부터 (종료 숫자 - 1) 사이의 연속된 숫자를 의미했죠. 이때 종료 숫자 대신 리스트 길이를 넣으면 어떻게 될까요? 코드로 작성해 봅시다.
for i in range(len(spending)):
print(i + 1, '월 지출은', spending[i], end=', ')
실행결과
1 월 지출은 25, 2 월 지출은 36, 3 월 지출은 8, 4 월 지출은 53, 5 월 지출은 24, 6 월 지출은 56
인덱스로 범위를 정했을 때와 마찬가지로 1월부터 6월까지 지출이 출력됩니다. 이처럼 리스트의 첫 인덱스부터 마지막 인덱스까지 반복 범위를 설정하고 싶을 때, 인덱스를 입력하지 않고도 range(len(리스트명))으로 리스트 안의 모든 데이터에 접근할 수 있습니다.
새로운 리스트를 만들어 봅시다. 앞에서처럼 좋아하는 음식을 순서대로 저장한 food 리스트를 만듭니다. 이 리스트에서 가장 좋아하는 음식, 세 번째로 좋아하는 음식, 가장 덜 좋아하는 음식을 출력해 봅시다. 직접 코드를 작성하고 책과 비교해 보세요. 앞에서 배운 내용이니 작성하기 어렵지 않을 겁니다.