코딩/python

[python] 파이썬 예외 종류 정리(SyntaxError, TypeError, IndexError 등)

비스카이비전 2021. 6. 30. 01:23

파이썬에서는 에러를 예외라고 부릅니다. 오늘은 파이썬에서 발생할 수 있는 예외들에 대해 정리해보고자 합니다.

SyntaxError: 구문 오류

SyntaxError는 파이썬 문법을 지키지 않았을 때 발생하는 에러입니다. 구문 오류가 있을 때는 프로그램이 실행조차되지 않습니다. 그래서 비교적 쉽게 문제점을 발견하여 처리할 수 있습니다. 파이썬에서 for문의 시작부의 끝에는 항상 콜론을 넣어줘야합니다. 생략하면 어떤 결과가 생기는지 확인해보겠습니다. 

 

 

예상한대로 SyntaxError가 발생했습니다. 

 

IndexError: 인덱스 오류

인덱스의 범위를 초과했을 때 발생하는 오류입니다. 

 

 

a[4]까지 밖에 없는데 a[6]을 선택하였기 때문에 IndexError가 발생했습니다. 

 

TypeError: 타입 오류

 

int 형 데이터와 str 형 데이터를 더하려고 했더니 다음과 같은 오류 메시지가 떴습니다. 

 

 

바로 TypeError입니다. 

 

FileNotFoundError: 파일 못 찾음 오류

 

 

test.txt 라는 메모장 파일을 열어서 안에 있는 내용을 읽으려고 했는데 오류가 발생했습니다.

 

 

test.txt를 못 찾겠다는 뜻입니다. 

 

IndentationError: 들여쓰기 오류

말 그대로 들여쓰기를 제대로 하지 않았을 때 발생하는 에러입니다. 만약 for 문을 사용하는데 들여쓰기를 적절하게 하지 않는다면 IndentationError가 발생합니다. 

 

 

ValueError: 값 오류

 

"7.23" 이라는 문자열을 int 함수에 넣어주면 7만 출력될 것 같지만, ValueError가 발생합니다. 

 

 

KeyError: 키 오류

딕셔너리에서 존재하지 않는 키에 접근할 때 발생하는 오류입니다.

 

 

ZeroDivisionError: 0으로 나누기 오류

파이썬에서는 어떤 숫자를 0으로 나누려고 할 때 오류를 발생시킵니다. 

 

 

AttributeError: 속성 오류

어떤 모듈에 존재하지 않는 속성을 사용할 때는 속성 오류가 발생합니다. time 모듈에 sleep()은 있지만 wake()는 없기 때문입니다.