Прескочи на главни садржај
🔒 Режим прегледа. Првих петнаест Foundations лекција је бесплатно; ова је Pro. Покрените 7-дневни trial да откључате едитор, AI савете и остатак курса. Картица је обавезна, можете отказати у било ком тренутку у Dashboard.Покрени 7-дневни trial →
← KurseviSenior Deep-DivesModule 6 · FAANG-2026 deep divestyping.Protocol — runtime_checkable's hidden holepredict109 / 161
+150 XP
Zadatak
📝 **Задатак:** Предвидите тачан резултат. Четири класе су тестиране према протоколу \`Цлосеабле\` који се може проверити током извођења (један метод: \`цлосе()\`). \`Филе\` је канонски случај. \`Торба\` нема \`затварање\`. \`Стреам\` дефинише \`цлосе\` без наслеђивања. \`Веирд\` има \`цлосе = 42\` — инт. Шта за сваку каже пример? 📋 Имплементирајте горњу функцију. Тестови се покрећу аутоматски. 💡 **Савет:** Поново прочитајте теорију ако запнете.
Predvidi izlaz

Pažljivo pročitaj kod

from typing import Protocol, runtime_checkable


@runtime_checkable
class Closeable(Protocol):
    def close(self) -> None: ...


class File:
    def close(self):
        return "file"


class Bag:
    pass


class Stream:
    """Doesn't inherit Closeable; still passes by structural matching."""
    def close(self):
        return "stream"


class Weird:
    """Has a 'close' attribute, but it's an int."""
    close = 42


print(isinstance(File(), Closeable))
print(isinstance(Bag(), Closeable))
print(isinstance(Stream(), Closeable))
print(isinstance(Weird(), Closeable))

Š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…