파이썬에서 나눗셈을 수행할 때 분모(나누는 수)가 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으로 나누는 상황에서도 프로그램이 중단되지 않고, 원하는 방식으로 오류를 우아하게 처리할 수 있습니다.