본문 바로가기
🐍 파이썬/오류

[파이썬 에러] IndexError: list index out of range

by 아단아 2022. 12. 6.
728x90

에러 종류 :

IndexError: list index out of range

에러 설명 : 리스트의 인덱스가 범위를 벗어남

예시 코드 (문제 상황) :

li = [1, 2, 3]
for i in range(4):
    print(li[i])
>>> 1
>>> 2
>>> 3

print(arr[i])
IndexError: list index out of range

li에는 3개의 항목만이 있는데, 4번째 항목을 출력하라고 하여 생긴 오류입니다.

 

해결 방법 :

이와 같은 상황일 때에는 대표적으로 2가지 해결 방법이 있습니다.

# 1. 호출하는 인덱스 값을 줄이기

li = [1, 2, 3]
for i in range(3):
    print(li[i])
# 2. 리스트에 항목 추가하기

li = [1, 2, 3]
li.append(4) # li.insert(3, 4) 도 같은 코드입니다!
for i in range(4):
    print(li[i])

 

만일 BFS와 같이 인덱스의 값이 범위를 벗어났는데도 반복문을 돌아야 할 때 위와 같은 오류들을 접하시게 될 경우에는, 값을 호출하기 전에 해당 범위가 맞는지 확인하는 코드를 넣셔야 합니다! (if문이나 try (예외처리) 활용)

 

주의 사항 :

파이썬은 인덱스가 0부터 시작됩니다! 코드 짤 때 이점 꼭 주의해주세요.

728x90