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

사용자 정의 메시지를 포함한 파이썬 커스텀 예외 구현 방법

파이썬에서는 내장 예외 클래스를 상속하여 자신만의 커스텀 예외를 만들 수 있습니다. 아래 예제는 ValueError를 상속받아 사용자 정의 메시지를 함께 전달하는 CustomValueError 예외를 구현하는 방법을 보여줍니다.

예제 코드

class CustomValueError(ValueError):
    def __init__(self, arg):
        self.arg = arg

try:
    a = int(input("숫자를 입력하세요: "))
    if not 1 < a < 10:
        raise CustomValueError("값은 반드시 1과 10 사이여야 합니다.")
except CustomValueError as e:
    print("CustomValueError 예외 발생!", e.arg)

실행 결과

숫자를 입력하세요: 45
CustomValueError 예외 발생! 값은 반드시 1과 10 사이여야 합니다.
Process finished with exit code 0

코드 설명

CustomValueError 클래스는 파이썬의 내장 예외인 ValueError를 상속합니다. 생성자(__init__)는 호출 시 전달받은 메시지를 self.arg 속성에 저장하며, 나중에 예외를 처리할 때 이 메시지를 활용할 수 있습니다.

입력받은 값이 1보다 크고 10보다 작지 않으면 raise 문을 통해 커스텀 예외가 발생하고, except 블록이 해당 예외를 잡아 저장해 둔 메시지를 화면에 출력합니다. 이처럼 커스텀 예외를 활용하면 오류 상황을 더 명확하고 읽기 쉬운 방식으로 표현할 수 있습니다.