[Python] sys.exc_info() 사용법과 이해
sys.exc_info()sys.exc_info()는 현재 스레드와 스택프레임에 해당하는 발생한 예외에 대한 정보를 반환한다. 반환값은 (type, value, traceback)으로 구성된 튜플이며 각 값의 의미는 정리하면 이와 같다.처리중인 exception typeexception type의 instance예외가 원래 발생한 지점에서 호출 스택을 캡슐화하는 traceback object이다. 다른 블로그를 참고하면 value에서는 에러 메시지를 얻을 수 있다고 한다.import sys # 예외를 발생시키는 함수 정의def raise_exception(): x = 1 / 0 try: raise_exception()except: # 예외 정보 출력 exc_type, exc_valu..
2024.05.02
no image
[Python] traceback 사용법
traceback 모듈이란 위 예시 이미지처럼 traceback의 출력 결과는 가장 마지막에 출력된 것이 가장 최근에 호출된 함수이다. 함수가 호출 될 때 마다 각 정보를 자료구조에 담아두고 함수의 호출 순서를 따라 차례대로 출력한다.  파이썬 프로그램의 스택 트레이스를 추출과 포매팅 그리고 프린팅하는 표준 인터페이스를 제공한다. 이 모듈은 traceback 객체를 사용하는데 sys.exc_info() 함수에서 반환값에서 얻거나 잡힌 예외의 __traceback__ 어트리뷰트로 접근할 수 있다. traceback 객체에는 tb_next, tb_frame, tb_lineno 등 다양한 어트리뷰트를 가지고 있으니 필요시 공식문서를 확인할 필요가 있다. ▶ sys.exc_info() 설명 링크 import s..
2024.05.02