Prejsť na hlavný obsah
🔒 Režim náhľadu. Prvých pätnásť lekcií Foundations je zadarmo; táto je Pro. Spustite 7-dňový trial pre odomknutie editora, AI nápovied a zvyšku kurzu. Karta vyžadovaná, zrušte kedykoľvek v Dashboard.Spustiť 7-dňový trial →
← KurzySenior Deep-DivesModule 7 · Memory, GC, modern typingWeakValueDictionary — caches that let GC do its jobpredict118 / 161
+150 XP
Úloha
📝 **Úloha:** Predpovedajte presný výstup. Po `del d` je jediný silný odkaz na Doc preč; `gc.collect()` ho získa späť a slot WeakValueDictionary zmizne. 📋 Implementujte funkciu vyššie. Testy prebiehajú automaticky. 💡 **Tip:** Znova si prečítajte teóriu, ak sa zaseknete.
Predpovedz výstup

Prečítaj kód pozorne

import weakref
import gc


class Doc:
    def __init__(self, name):
        self.name = name


cache: weakref.WeakValueDictionary = weakref.WeakValueDictionary()
d = Doc("alpha")
cache["alpha"] = d

print("alpha" in cache)
print(cache["alpha"].name)
print(len(cache))

del d
gc.collect()

print("alpha" in cache)
print(len(cache))

Čo program vypíše? Napíš sem:

💬 Diskusia

Buď prvý — polož otázku alebo sa podeľ o tip.
Prihlás sa aby si sa zapojil do diskusie. Čítanie je zadarmo.
Načítava sa diskusia…