Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

파이썬에서 ZeroDivisionError 예외를 잡아 처리하는 방법

파이썬에서 나눗셈을 수행할 때 분모(나누는 수)가 0이 되면 ZeroDivisionError 예외가 자동으로 발생합니다. 이 예외를 그대로 두면 프로그램이 비정상적으로 종료되기 때문에, try-except 블록을 사용해 적절하게 처리해 주는 것이 좋습니다.

다음 예제는 0으로 나누는 코드를 예외 처리로 감싸고, 발생한 예외의 타입과 메시지를 확인하는 방법을 보여줍니다.

예제

try:
    x = 11 / 0
    print(x)
except Exception as e:
    print(type(e).__name__)
    print(e)

출력 결과

ZeroDivisionError
division by zero

type(e).__name__을 사용하면 발생한 예외의 클래스 이름을, e를 출력하면 예외와 함께 전달된 상세 메시지를 확인할 수 있습니다.

특정 예외만 잡고 싶다면?

모든 예외를 포괄하는 Exception 대신 ZeroDivisionError를 직접 지정하면 해당 예외만 정확하게 처리할 수 있어, 의도하지 않은 다른 오류까지 삼키는 실수를 방지할 수 있습니다.

try:
    x = 11 / 0
except ZeroDivisionError as e:
    print("예외 발생:", e)

이처럼 try-except 구문을 활용하면 0으로 나누는 상황에서도 프로그램이 중단되지 않고, 원하는 방식으로 오류를 우아하게 처리할 수 있습니다.