프로그래밍언어/파이썬[초급]
[파이썬][초급] Chapter27. 예외 종류와 raise
about_IT
2025. 5. 16. 16:15
728x90
예외는 프로그램 실행 중 발생할 수 있는 오류이며, 파이썬은 다양한 내장 예외를 제공합니다. 또한 raise
문을 통해 직접 예외를 발생시킬 수도 있습니다. 이번 장에서는 자주 사용되는 예외의 종류와 raise 문법에 대해 학습합니다.
● 주요 내장 예외 종류
다음은 자주 사용되는 예외들입니다.
ZeroDivisionError
: 0으로 나눌 때ValueError
: 잘못된 값이 입력될 때TypeError
: 자료형이 맞지 않을 때IndexError
: 리스트 인덱스 범위를 벗어날 때KeyError
: 딕셔너리에 존재하지 않는 키에 접근할 때
nums = [1, 2, 3]
print(nums[5]) # IndexError
● 예외 계층 구조
모든 예외는 BaseException
을 상속한 클래스입니다. 대부분은 Exception
클래스 아래에 있으며, 사용자 정의 예외도 이 계층을 따릅니다.
● raise 문
raise
문을 사용하면 조건에 따라 명시적으로 예외를 발생시킬 수 있습니다.
def divide(a, b):
if b == 0:
raise ZeroDivisionError("0으로 나눌 수 없습니다.")
return a / b
print(divide(10, 0))
● 사용자 정의 예외
필요 시 새로운 예외 클래스를 정의할 수 있으며, 일반적으로 Exception
을 상속합니다.
class NegativeNumberError(Exception):
pass
def check_positive(x):
if x < 0:
raise NegativeNumberError("음수는 허용되지 않습니다.")
check_positive(-3)
● 예외와 raise 결합
raise를 try-except와 함께 사용하여 특정 조건에서만 예외를 발생시키고, 이를 처리할 수 있습니다.
try:
check_positive(-5)
except NegativeNumberError as e:
print("예외 발생:", e)
● 마무리
이번 장에서는 파이썬의 주요 내장 예외, raise 문을 통한 예외 발생, 사용자 정의 예외 클래스 작성 방법까지 살펴보았습니다. 예외의 흐름을 이해하고 필요한 시점에 직접 발생시키는 능력은 견고한 프로그램을 만드는 데 필수입니다. 다음 장에서는 파일 입출력의 기초에 대해 학습합니다.
728x90