예외 발생을 통해 Python 코드의 오류 및 중단을 제어할 수 있습니다. 이 문서에서는 특정 예외를 수동으로 발생시켜 적절하게 포착하고 처리할 수 있도록 하는 방법을 보여줍니다.
예외를 발생시키려면 raise 키워드와 예외 클래스 및 사용자 정의를 차례로 사용하세요. 메시지 인수. 예:
raise ValueError('Invalid input value.')
특정 예외 클래스 선택:
다음과 같이 상황에 맞는 가장 구체적인 예외 생성자를 사용합니다. 일반 예외는 버그를 숨기고 특정 처리를 방지할 수 있습니다.
설명 포함 메시지:
문제 진단에 도움이 되는 구체적이고 의미 있는 오류 메시지를 제공하십시오.
예외 수정 방지:
예외를 수정해야 하는 경우 sys를 사용하세요. .exc_info() 스택 추적을 보존합니다. 그러나 이는 일반적으로 권장되지 않으며 Python 2와 3 사이에 호환성 문제가 발생할 수 있습니다.
제외 절 사용:
다음과 같은 경우 예외를 처리하려면 특정 예외 유형을 포착하려면 Except 절을 사용하세요.
Bare raise for 다시 발생:
스택 추적을 유지하면서 예외를 다시 발생시키려면 단순 raise 문을 사용하세요.
try: # Code that may raise an exception except SpecificException: logger.error(error) raise
이러한 발생 메서드를 사용하지 마세요. 예외:
def check_input(value): if not isinstance(value, int): raise TypeError('Input must be an integer.') if value < 0: raise ValueError('Input must be positive.') try: check_input(-1) except TypeError as error: print('Wrong input type:', error) except ValueError as error: print('Invalid input value:', error)
만들기 특정 오류를 처리하기 위한 사용자 정의 오류 유형 시나리오:
class MyCustomError(Exception): '''This error represents a specific problem with my code.'''
사용법:
raise MyCustomError('An unexpected issue occurred.') except MyCustomError as error: print('Custom error raised:', error)
위 내용은 Python에서 수동으로 예외를 발생시키고 효과적으로 처리하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!