Перейти до основного вмісту
🔒 Режим прев'ю. Перші 15 уроків Foundations — безкоштовні; цей — Pro. Запусти 7-денний trial щоб відкрити редактор, AI-підказки і решту курсу. Потрібна картка, скасування в Dashboard у будь-який момент.Почати 7-денний trial →
← КурсиSenior Deep-DivesModule 9 · Error handling depthtraceback.TracebackException — exceptions as datapredict138 / 161
+150 XP
Завдання
📝 **Завдання:** Спрогнозуйте 5-рядковий вихід. Функція divide(a, b) викликається з b=0, викликаючи ZeroDivisionError. Усередині блоку винятків ми створюємо TracebackException і друкуємо його ім’я exc_type, кількість кадрів, ім’я останнього кадру, загальну кількість відформатованих рядків і перший відформатований рядок. 📋 Реалізуйте наведену вище функцію. Тести запускаються автоматично. 💡 **Підказка:** Перечитайте теорію, якщо ви застрягли.
Передбач вивід

Прочитай код уважно

import traceback


def divide(a: int, b: int) -> float:
    return a / b


try:
    divide(10, 0)
except Exception as e:
    te = traceback.TracebackException.from_exception(e)
    print(f"exc_type: {type(e).__name__}")
    print(f"frames: {len(te.stack)}")
    print(f"last frame: {te.stack[-1].name}")
    lines = list(te.format())
    print(f"line count: {len(lines)}")
    print(f"first line: {lines[0].rstrip()}")

Що виведе програма? Напиши тут:

💬 Обговорення

Будьте першим — поставте запитання або поділіться порадою.
Увійдіть щоб приєднатися до обговорення. Читання безкоштовне.
Завантаження обговорення…