Zum Hauptinhalt springen
🔒 Vorschaumodus. Die ersten fünfzehn Foundations-Lektionen sind kostenlos; diese hier ist Pro. Starte einen 7-Tage-Trial, um den Editor, AI-Hinweise und den Rest des Lehrplans freizuschalten. Karte erforderlich, jederzeit im Dashboard kündbar.7-Tage-Trial starten →
← KurseSenior Deep-DivesModule 6 · FAANG-2026 deep divesdataclass field(default_factory) — the mutable-default blockpredict114 / 161
+150 XP
Aufgabe
📝 **Aufgabe:** Die genaue Ausgabe vorhersagen. (1) Versuchen Sie, eine Datenklasse „Bad“ mit „items: list = []\“ zu definieren – fangen Sie den ValueError ab. (2) Definieren Sie „Gut“ mit „field(default_factory=list)“. (3) Erstellen Sie zwei Instanzen, hängen Sie sie an die Liste an, drucken Sie dann beide Listen aus und überprüfen Sie die Identität. Sieht \`g2\` den Anhang? 📋 Implementieren Sie die obige Funktion. Tests laufen automatisch ab. 💡 **Hinweis:** Lesen Sie die Theorie noch einmal, wenn Sie nicht weiterkommen.
Sage die Ausgabe vorher

Lies den Code sorgfältig

from dataclasses import dataclass, field


try:
    @dataclass
    class Bad:
        items: list = []
except ValueError as e:
    print(f"err:{e}")


@dataclass
class Good:
    items: list = field(default_factory=list)


g1 = Good()
g2 = Good()
g1.items.append(1)
print(g1.items)
print(g2.items)
print(g1.items is g2.items)

Was wird das Programm ausgeben? Schreib hier:

💬 Diskussion

Sei der erste — stelle eine Frage oder teile einen Tipp.
Anmelden um an der Diskussion teilzunehmen. Lesen ist kostenlos.
Diskussion wird geladen…