파이썬에서 사용자 정의 예외 발생시키기
기본적으로 파이썬에 내장된 예외는 모든 상황에서 우리의 요구를 항상 충족시킬 수는 없습니다. 따라서 파이썬에는 사용자 정의 예외 유형을 생성할 수 있는 기능이 내장되어 있습니다.
예외를 생성하려면, 키워드 class를 사용하여 특별한 OOP 클래스를 선언해야 합니다. 그 오른쪽에 예외 이름을 쓰고, 이름 뒤의 괄호 안에는 예외 유형을 적습니다:
class 예외(예외 유형):
pass
너무 긴 리스트를 잡기 위해 우리만의 ToBigLength 클래스를 생성해 봅시다. 이 클래스의 괄호 안에 그것이 잡을 예외 유형을 써봅시다. Exception 예외가 되도록 합시다. 클래스 본문에는 일단 pass를 쓸 수 있습니다:
class ToBigLength(Exception):
pass
방금 생성한 예외의 동작을 테스트해 봅시다. 이를 위해 try-except 구문을 쓰고, 특별한 명령어 raise를 사용하여 우리의 예외를 발생시켜 봅시다:
try:
raise ToBigLength
except ToBigLength:
print('error: list is too big')
코드를 실행한 후 다음과 같이 출력됩니다:
'error: list is too big'
음수를 잡기 위한 예외를 생성하세요.
영(0)을 잡기 위한 예외를 생성하세요.