Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- 프론트엔드
- 인출수수료
- 가입
- javascript
- 보험
- 리스트
- 웹개발
- 특약
- 보험료
- 파이썬
- 심장질환
- 변환
- python
- 납입
- jQuery
- 중도인출
- PythonProgramming
- 수수료
- 교보생명
- 프로그래밍
- 코딩
- 교보
- 뇌출혈
- 급성심근경색증
- Java
- Vue.js
- 자바스크립트
- 추가납입
- 사망
- 문자열
Archives
- Today
- Total
SeouliteLab
[Python/파이썬] Stack trace 출력하는 방법 (traceback) 본문
파이썬에서는 traceback 모듈을 사용하여 스택 트레이스를 출력할 수 있습니다. 스택 트레이스는 예외가 발생한 지점부터 호출 스택의 모든 함수 호출 정보를 포함합니다. 이를 통해 코드에서 발생한 오류를 추적하고 디버깅할 수 있습니다.
1. traceback.print_exc()를 사용하는 방법
가장 일반적인 방법은 traceback 모듈의 print_exc() 함수를 사용하여 예외 정보를 출력하는 것입니다. 이 함수를 호출하면 가장 최근에 발생한 예외에 대한 전체 스택 트레이스가 출력됩니다.
import traceback
try:
# 오류를 발생시키는 코드
x = 1 / 0
except:
traceback.print_exc()
2. traceback.format_exc()를 사용하여 스택 트레이스를 문자열로 반환하는 방법
traceback 모듈의 format_exc() 함수를 사용하여 스택 트레이스를 문자열로 반환할 수도 있습니다. 이 문자열은 후속 처리나 기록을 위해 사용할 수 있습니다.
import traceback
try:
# 오류를 발생시키는 코드
x = 1 / 0
except:
trace_str = traceback.format_exc()
print(trace_str)
3. traceback.extract_tb()를 사용하여 스택 트레이스 정보를 추출하는 방법
traceback 모듈의 extract_tb() 함수를 사용하면 스택 트레이스에서 각 프레임의 정보를 추출할 수 있습니다. 이를 사용하면 예외가 발생한 위치와 호출된 함수들의 파일 이름, 줄 번호 등을 확인할 수 있습니다.
import traceback
try:
# 오류를 발생시키는 코드
x = 1 / 0
except:
tb = traceback.extract_tb(sys.exc_info()[2])
for filename, lineno, func, text in tb:
print(f"File {filename}, line {lineno}, in {func}")
print(f" {text}")
'프로그래밍' 카테고리의 다른 글
[Python/파이썬] 로그 출력 (logging API)하기 (0) | 2024.03.05 |
---|---|
[Python/파이썬] 두개의 딕셔너리 병합 (merge) (0) | 2024.03.05 |
[Python/파이썬] 숫자 3자리마다 콤마(,) 넣는 방법 (0) | 2024.03.05 |
[Python/파이썬] Shell 명령어 실행 및 리턴 값 받기 (0) | 2024.03.05 |
[Python/파이썬] 데이터 Type 확인 - type(), isinstance() (0) | 2024.03.05 |