Python Glossary English

все Python 3tracebackфункция

traceback.print_tb()

печать трассировки

Печатает только кадры трассировки — без заголовка и без строки с типом исключения — из объекта e.__traceback__.

Синтаксис

traceback.print_tb(tb, limit=None, file=None)

Принимает трассировку, а не исключение. В отличие от print_exception, не будет ни «Traceback (most recent call last):», ни «ValueError: …» — только File/line. Положительный limit оставляет первые N кадров от места перехвата, отрицательный (с 3.5) — последние N у места ошибки, обычно самые интересные.

Примеры

import io, traceback
def a():
    b()
def b():
    raise KeyError('id')
try:
    a()
except KeyError as e:
    buf = io.StringIO()
    traceback.print_tb(e.__traceback__, limit=-1, file=buf)
print(buf.getvalue().splitlines()[1].strip())  # → raise KeyError('id')

См. также

Открыть в полном глоссарииdocs.python.orgСообщить о неточности