[python] 파이썬 예외 종류 정리(SyntaxError, TypeError, IndexError 등) 2021.06.30 01:23:32
반응형

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

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()는 없기 때문입니다.

 

 

반응형
  • 꼬장스카이비전 보통 에러는 컴파일오류(Compile error)와 실행오류(Runtime error)로 구분하는데요. 간단하게 생각하면 코드를 실행전에 검사하여 잡는 오류와 실행중에 잡는 오류로 생각하면 됩니다.
    파이썬과 같은 인터프리터 언어는 컴파일과정이 없어서 문법오류(Syntax error)와 예외(Exception)으로 구분하는데 개념은 실행전/실행후 구분으로 똑같습니다.

    간단히 말하면 여기서 언급하는 모든 에러가 실행전에 나타나는 에러라면 게시글을 syntax error 로 고치고 syntax error의 종류로 언급하면 좋을 것 같습니다.

    참고
    https://docs.python.org/3/tutorial/errors.html
secret
-
+