더북(TheBook)

 

56 내 예외 만들기

 

 

<강의보기> 04:47

이번 시간에는 내 예외를 직접 만들어 보겠습니다.

Part 12에서는 예외를 다루는 방법으로 예외를 잡는 법과 파이썬에 미리 정의되어 있는 예외를 일으키는 방법을 배웠습니다. 파일을 my_exception.py로 저장하고 복습해 보겠습니다.

 

코드 my_exception.py

value = '가'
try:
    if value not in ['가위', '바위', '보']:
        raise ValueError("가위, 바위, 보 중에 하나의 값이어야 합니다.")
except ValueError:
    print("오류가 발생했습니다.")

 

실행 결과

오류가 발생했습니다.

 

오류가 발생하도록 value에 일부러 잘못된 값인 '가'를 넣었습니다. try문으로 오류를 발생시키고 except문에서 처리하였습니다. 그런데 값 오류(ValueError)는 파이썬에서 꽤 흔하게 발생하는 오류입니다. 코드가 복잡해지면 함수를 여러 번 호출하게 되고 값 오류를 낼 수 있는 코드도 여러 군데 쓰게 됩니다. 혹시라도 중간에 실행된 수많은 함수 중에서 잡지 말아야 할 값 오류까지 잡아서 처리해 버리면 코드가 의도한 대로 동작하지 않습니다. 이미 처리해 버린 오류가 실제로 어디에서 발생했는지 알아내는 건, 처리하지 않은 오류가 어디에서 발생했는지 알아내는 것보다 훨씬 더 번거롭습니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.