Naar hoofdinhoud
🔒 Voorbeeldmodus. De eerste vijftien Foundations-lessen zijn gratis; deze is Pro. Start een 7-daagse trial om de editor, AI-hints en de rest van het curriculum te ontgrendelen. Kaart vereist, op elk moment opzegbaar in Dashboard.Start 7-daagse trial →
← CursussenSenior Deep-DivesModule 1 · Concurrency internals · RecapExitStack voor dynamisch contextbeheerpredict23 / 161
+100 XP
Opdracht
📝 **Vraag:** Voorspel de exacte output. \`res(naam)\` is een kleine contextmanager die \`open:\` / \`close:\` afdrukt. Drie grondstoffen komen een 'ExitStack' binnen in de volgorde A → B → C. Wanneer de 'with' wordt afgesloten, in welke volgorde sluiten ze dan? 📋 Kies het juiste antwoord. 💡 **Hint:** Herlees de bovenstaande theorie als je het niet zeker weet.
Voorspel uitvoer

Lees de code zorgvuldig

from contextlib import ExitStack, contextmanager


@contextmanager
def res(name):
    print(f"open:{name}")
    try:
        yield name
    finally:
        print(f"close:{name}")


with ExitStack() as stack:
    a = stack.enter_context(res("A"))
    b = stack.enter_context(res("B"))
    c = stack.enter_context(res("C"))
    print(f"use:{a}{b}{c}")

print("done")

Wat zal het programma uitprinten? Schrijf hier:

💬 Discussie

Wees de eerste — stel een vraag of deel een tip.
Log in om mee te doen aan de discussie. Lezen is gratis.
Discussie laden…