Python에서 예외 인쇄

Vaibhav Vaibhav 2023년1월30일
  1. Python에서try-except-finally블록을 사용하여 예외 인쇄
  2. Python에서traceback모듈을 사용하여 예외 인쇄
Python에서 예외 인쇄

Python에서 예외는 오류입니다. Python에는TypeError,SyntaxError,KeyError,AttributeError등과 같은 많은 오류 또는 예외가 있습니다. 이러한 블록이 없으면 이러한 예외를 처리하기 위해 Python에서try-except-finally를 사용합니다. 이러한 예외는 프로그램의 실행을 중지합니다. Python의try-except-finally블록은 프로그램 실행을 중지하지 않고 이러한 예외를 인쇄하는 데 사용할 수 있습니다.

Python에서try-except-finally블록을 사용하여 예외 인쇄

다음 코드 스 니펫을 고려하십시오.

dictionary = {
    "hello": "world",
}
number = 25

try:
    number = number + dictionary["hello"]
    print(number)
except Exception as e:
    print(repr(e))

출력:

TypeError("unsupported operand type(s) for +: 'int' and 'str'",)

위의 코드에서 먼저 문자열 값world를 가리키는 키로hello와 변수number를 사용하여 사전을 초기화합니다. 그런 다음try블록 내에서dictionary에 저장된 문자열 값에 액세스하여number변수에 추가하려고합니다.

이 문장은정수문자열을 추가하는 것이 불가능하기 때문에 실질적이고 개념적으로 잘못되었습니다. 따라서except블록은이 오류를 포착하고 콘솔에서이 예외와 관련된Exception개체를 인쇄합니다.

Python에서traceback모듈을 사용하여 예외 인쇄

Python에는 예외를 인쇄하고 형식화하기위한 내장 모듈traceback이 있습니다. 또한 콘솔에서 전체 예외를 쉽게 인쇄 할 수 있습니다.

Python에서는raise키워드를 사용하여 수동으로 예외를 발생시킬 수 있습니다. 다음 코드 스 니펫에서는raise키워드를 사용하여try블록 내에서 예외를 발생시킵니다.

import traceback

try:
    raise KeyError
except Exception as e:
    traceback.print_exc()

출력:

Traceback (most recent call last):
  File ".\main.py", line 4, in <module>
    raise KeyError
KeyError

위 코드에서KeyError예외를 발생시키고traceback모듈에서print_exc()함수를 사용하여 예외를 인쇄합니다. 이 함수는 예외에 대한 정보를 인쇄하며traceback.print_exception(*sys.exc_info(), limit, file, chain)의 축약 형입니다.

print_exception()함수에 대한 자세한 내용은 공식 문서 여기를 참조하십시오.

Vaibhav Vaibhav avatar Vaibhav Vaibhav avatar

Vaibhav is an artificial intelligence and cloud computing stan. He likes to build end-to-end full-stack web and mobile applications. Besides computer science and technology, he loves playing cricket and badminton, going on bike rides, and doodling.

관련 문장 - Python Exception