Přejít k hlavnímu obsahu
🔒 Režim náhledu. Prvních patnáct lekcí Foundations je zdarma; tato je Pro. Spusťte 7denní trial pro odemčení editoru, AI nápověd a zbytku kurzu. Karta vyžadována, zrušte kdykoli v Dashboard.Spustit 7denní trial →
← KurzySenior Deep-DivesModul 5 · Architecture & Code Review__slots__ hluboký ponorpredict69 / 161
+100 XP
Úkol
📝 **Otázka:** Předpovězte přesný výkon. \`Compact\` používá \`__slots__ = ("x", "y")\` — žádný \`__dict__\`. \`Hybrid(Compact)\` přidá \`__slots__ = ("__dict__",)\` — explicitně znovu povolí diktování pro jednotlivé instance v podtřídě. Tři otázky: (1) Může \`c.z = 99\` uspět? (2) Může \`h.z = 99\` uspět? (3) Má každá instance \`__dict__\`? 📋 Vyberte správnou odpověď. 💡 **Tip:** Pokud si nejste jisti, přečtěte si znovu teorii výše.
Předpověz výstup

Přečti kód pozorně

class Compact:
    __slots__ = ("x", "y")


class Hybrid(Compact):
    __slots__ = ("__dict__",)


c = Compact()
c.x = 1
c.y = 2
try:
    c.z = 99
    print("compact:z_ok")
except AttributeError:
    print("compact:no_z")

h = Hybrid()
h.x = 1
h.y = 2
h.z = 99
print(f"hybrid:{h.x},{h.y},{h.z}")
print(hasattr(c, "__dict__"))
print(hasattr(h, "__dict__"))

Co program vypíše? Napiš sem:

💬 Diskuze

Buď první — polož otázku nebo se podělej o tip.
Přihlas se abys se zapojil do diskuze. Čtení je zdarma.
Načítání diskuze…