Ugrás a fő tartalomra
🔒 Előnézet mód. Az első tizenöt Foundations lecke ingyenes; ez Pro. Indíts 7 napos trial-t, hogy feloldd a szerkesztőt, az AI tippeket és a tananyag többi részét. Kártya szükséges, bármikor lemondhatod a Dashboard-ban.7 napos trial indítása →
← KurzusokSenior Deep-DivesModule 6 · FAANG-2026 deep divesDescriptor lookup order — data vs non-datapredict106 / 161
+150 XP
Feladat
📝 **Feladat:** A pontos kimenet előrejelzése. Két leíró: a \`DataDesc\` meghatározza a \`__get__\` ÉS a \`__set__\` (adatleíró) értéket is; A \`NonDataDesc\` csak a \`__get__\` (nem adat) értéket határozza meg. Mindkettő a \`Holder\` osztályattribútum. Ezután a teszt közvetlenül a példány \`__dict__\`-jába rejti az értékeket – megkerülve a leíró protokollt. Melyik nyer \`h.d\` és melyik \`h.n\`? 📋 Valósítsa meg a fenti funkciót. A tesztek automatikusan futnak. 💡 **Tipp:** Ha elakad, olvassa el újra az elméletet.
Találd ki a kimenetet

Olvasd el a kódot figyelmesen

class DataDesc:
    def __get__(self, instance, owner):
        print("data:get")
        return 1
    def __set__(self, instance, value):
        print(f"data:set:{value}")


class NonDataDesc:
    def __get__(self, instance, owner):
        print("nondata:get")
        return 2


class Holder:
    d = DataDesc()
    n = NonDataDesc()


h = Holder()
h.__dict__["d"] = "shadow_d"
h.__dict__["n"] = "shadow_n"

print(h.d)
print(h.n)

Mit ír ki a program? Írd ide:

💬 Beszélgetés

Légy az első — tegyél fel kérdést vagy oszd meg egy tippet.
Jelentkezz be hogy csatlakozz a beszélgetéshez. Az olvasás ingyenes.
Beszélgetés betöltése…