예외(Exception)은 프로그램 실행 중 발생할 수 있는 예상치 못한 오류 상황을 의미한다.
1. 예외 처리 방법
try:
# 예외가 발생할 가능성이 있는 코드
except ExceptionType1: # 'ExceptionType1'에는 실제 예외 유형이 들어갑니다.
# ExceptionType1 예외가 발생했을 때 실행될 코드
except ExceptionType2: # 'ExceptionType2'에는 다른 예외 유형이 들어갑니다.
# ExceptionType2 예외가 발생했을 때 실행될 코드
# 추가적인 except 블록을 계속 추가할 수 있습니다.
else:
# try 블록에서 예외가 발생하지 않았을 때 실행될 코드
finally:
# 예외 발생 여부와 관계없이 항상 실행될 코드
2. 에러가 발생하는 유형
ValueError
잘못된 값을 함수나 연산에 제공할 때 발생합니다.
예) 숫자가 아닌 문자열을 int() 함수로 변환하려고 할 때 발생.
TypeError
올바르지 않은 유형의 객체를 연산에 사용하려 할 때 발생합니다.
예) 문자열과 숫자를 함께 더하려고 할 때 발생.
ZeroDivisionError
숫자를 0으로 나누려고 할 때 발생합니다.
IndexError
리스트, 튜플, 문자열 등의 시퀀스 유형에서 범위를 벗어난 인덱스에 접근하려 할 때 발생합니다.
예) 길이가 3인 리스트에 대해 4번째 요소에 접근하려고 할 때 발생.
KeyError
딕셔너리에서 존재하지 않는 키를 사용하여 값을 검색하려고 할 때 발생합니다.
AttributeError
객체에 없는 속성이나 메서드에 접근하려고 할 때 발생합니다.
FileNotFoundError
존재하지 않는 파일을 열려고 할 때 발생합니다.
ImportError
존재하지 않는 모듈을 가져오려고 할 때 또는 모듈 내에 해당 속성/함수가 없을 때 발생합니다.
NameError
정의되지 않은 변수나 함수를 사용하려고 할 때 발생합니다.
예) 프로그램에서 정의되지 않은 변수 x를 사용하려고 할 때 발생.
OverflowError
수치 연산 결과가 너무 커서 표현할 수 없을 때 발생합니다.
MemoryError
프로그램이 사용 가능한 모든 메모리를 소진했을 때 발생합니다.
'Python > 개요 및 문법' 카테고리의 다른 글
파일 입출력 (0) | 2024.10.02 |
---|---|
모듈 (Module) (feat. 파이참 설치) (0) | 2024.10.02 |
스페셜 메소드 (0) | 2024.09.30 |
파이썬의 상속 (0) | 2024.09.28 |
클로저와 데코레이터 (0) | 2024.09.28 |