[python] 사용자 정의 예외 클래스 만들기

파이썬에서는 기본적으로 제공되는 예외 클래스 외에도 사용자가 직접 예외 클래스를 만들어서 사용할 수 있습니다. 이 글에서는 파이썬에서 사용자 정의 예외 클래스를 어떻게 만들고 사용하는지에 대해 알아보겠습니다.

예외 클래스란?

예외 클래스는 기본적으로 Python의 내장 예외 클래스를 상속받은 사용자 정의 클래스입니다. 이를 통해 사용자는 프로그램이 실행 중에 특정 조건에서 발생하는 예외를 정의하고 처리할 수 있게 됩니다.

사용자 정의 예외 클래스 만들기

사용자 정의 예외 클래스를 만들기 위해서는 다음과 같은 형태를 따릅니다.

class CustomError(Exception):
    def __init__(self, message):
        self.message = message
        super().__init__(self.message)

위의 코드에서 CustomError는 사용자가 정의한 예외 클래스입니다. Exception 클래스를 상속받아 만들어졌고, 생성자(__init__)에서는 사용자가 원하는 메시지를 설정할 수 있습니다.

사용자 정의 예외 처리

이제 위에서 만든 사용자 정의 예외 클래스를 사용해보겠습니다.

def divide(a, b):
    if b == 0:
        raise CustomError("Cannot divide by zero")
    return a / b

try:
    result = divide(10, 0)
    print(result)
except CustomError as e:
    print("Error:", e.message)

위의 코드에서 divide 함수에서 두 번째 인자가 0일 때 CustomError를 발생시킵니다. 이를 tryexcept 블록을 사용하여 적절히 처리할 수 있습니다.

마치며

이렇게 Python에서는 사용자 정의 예외 클래스를 만들어서 프로그램의 유연성을 높일 수 있습니다. 적절한 예외 처리를 통해 안정적인 프로그램을 작성할 수 있으며, 코드의 가독성을 높일 수 있습니다.

참고 문헌: Python 공식 문서