Прескочи на главни садржај
🔒 Режим прегледа. Првих петнаест Foundations лекција је бесплатно; ова је Pro. Покрените 7-дневни trial да откључате едитор, AI савете и остатак курса. Картица је обавезна, можете отказати у било ком тренутку у Dashboard.Покрени 7-дневни trial →
← KurseviSenior Deep-DivesModule 9 · Error handling depthtraceback.TracebackException — exceptions as datapredict138 / 161
+150 XP
Zadatak
📝 **Задатак:** Предвидите излаз од 5 редова. Функција `дивиде(а, б)` се позива са б=0, подижући ЗероДивисионЕррор. Унутар блока осим, ​​правимо ТрацебацкЕкцептион и штампамо његово име екц_типе, број оквира, име последњег оквира, укупан број форматираних линија и прву форматирану линију. 📋 Имплементирајте горњу функцију. Тестови се покрећу аутоматски. 💡 **Савет:** Поново прочитајте теорију ако запнете.
Predvidi izlaz

Pažljivo pročitaj kod

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()}")

Šta će program ispisati? Napiši ovde:

💬 Diskusija

Budi prvi — postavi pitanje ili podeli savet.
Prijavi se da bi se pridružio diskusiji. Čitanje je besplatno.
Učitavanje diskusije…