우리는 일반적인 예외를 발생시키는 대신 특정 문제에 맞는 가장 구체적인 예외 생성자를 사용합니다. 특정 예외를 포착하려면 이를 하위 분류하는 다른 모든 더 구체적인 예외를 포착해야 합니다.
특정 예외를 발생시키고 동일한 특정 예외를 처리해야 합니다.
특정 예외를 발생시키기 위해 다음과 같이 raise 문을 사용합니다.
예시
import sys
try:
f = float('Tutorialspoint')
print f
raise ValueError
except Exception as err:
print sys.exc_info() 출력
다음 출력을 얻습니다.
(<type 'exceptions.ValueError'>, ValueError('could not convert string to float: Tutorialspoint',), <traceback object at 0x0000000002E33748>) 다음 예와 같은 인수로도 오류가 발생할 수 있습니다.
예시
try:
raise ValueError('foo', 23)
except ValueError, e:
print e.args 출력
다음 출력을 얻습니다.
('foo', 23)