Dictionaries & Key-Value-Paare

Der Monster-Index & Profil-Speicher

Fortschritt:
PHASE 1

Discovery & Checkpoint

Video & Einstieg
Verständnis-Check Beantworte die Frage zum Video

Gegeben ist folgendes Dictionary:

wesen = {
    "name": "Voltivogel",
    "level": 10,
    "element": "Elektro"
}
wesen["level"] = 11
wesen["rang"] = "S"

Welche Aussage über den Zustand von wesen nach der Programmausführung ist fachlich korrekt?

PHASE 2

Parsons Puzzle

Struktur & Logik
Aufgabe Bringe die Bausteine per Drag & Drop in Reihenfolge

Setze das Programm in die richtige logische Reihenfolge:
1. Initialisiere das Profil-Dictionary monster mit 'name', 'typ' und 'level'.
2. Erhöhe das bestehende Level um genau 2.
3. Gib nacheinander den Namen, den Typ und das neue Level auf der Konsole aus.

Achtung: Genau zwei Kacheln enthalten typische Denkfehler und müssen im Ablagebereich aussortiert werden!

Tipp: Benutze die Anfasser zum Verschieben und ⇥- / ⇥+ zum Einrücken.

Dein Programm (Lösung) Hier die Zeilen in die richtige Reihenfolge bringen
Aussortierte Bausteine (Distraktoren) Hierhin fehlerhafte / nicht benötigte Zeilen ziehen
PHASE 3

Scaffolding & Bugfix

Geführte Praxis
Aufgabe Finde und behebe die Fehler im Code

Im folgenden Code haben sich zwei typische Dictionary-Fehler eingeschlichen: Ein Syntax-Fehler bei der Initialisierung und ein ungültiger Schlüsselzugriff.

Repariere den Code, sodass das Wesen Aquasaur mit 140 HP angelegt wird, um 15 HP geheilt wird und beide Ausgaben fehlerfrei auf der Konsole erscheinen.

Tipp: Passe den Code im Editor an und klicke auf „Ausführen & Prüfen“.

script.py
Python 3.11
Konsole (Output)

                    

Musterlösung:
kreatur = {
    "name": "Aquasaur",
    "hp": 140
}

kreatur["hp"] = kreatur["hp"] + 15

print("Name:", kreatur["name"])
print("Aktuelle HP:", kreatur["hp"])
PHASE 4

Coding Challenge

Eigenständiges Coden
Ziel-Aufgabe Löse die Aufgabe und bestehe alle Tests

Erstelle einen vollständigen Datenbank-Eintrag für profil:

1. Lege das Dictionary profil mit vier Schlüsseln an:
- "name": 'Aquasaur'
- "typ": 'Elektro'
- "level": 18
- "hp": 140
2. Erhöhe das Level um 2 (dynamisch über den Schlüssel "level" rechnen, nicht hartkodieren).
3. Füge den neuen Schlüssel "status" mit dem Wert 'bereit' hinzu.
4. Gib die drei Zeilen formatiert aus:
- Monster: <Name>
- Level: <Level>
- Status: <Status>

Tipp: Schreibe deinen Code in den Editor und klicke auf „Code testen“.

solution.py
Python 3.11
Konsole (Output)

                    

Test-Suite

⚠️

Musterlösung:
profil = {
    "name": "Aquasaur",
    "typ": "Elektro",
    "level": 18,
    "hp": 140
}

profil["level"] += 2
profil["status"] = "bereit"

print("Monster:", profil["name"])
print("Level:", profil["level"])
print("Status:", profil["status"])
PHASE 5

Das interaktive Monster-Kompendium

Kreatives Sandbox-Labor
Freies Experimentieren Erweitere deinen Code nach deinen eigenen Ideen

Erweitere dein Monster-Profil zu einem vollwertigen Datenblatt!
1. Ergänze weitere Attribute wie "angriff" oder "verteidigung".
2. Speichere eine Liste von Attacken unter dem Schlüssel "attacken" (z. B. ["Tackle", "Kratzer"]).
3. Gib alle Eigenschaften mit einer Schleife und .items() übersichtlich formatiert auf der Konsole aus.

Tipp: Passe den Code an, führe ihn aus oder lade dein fertiges Programm als Python-Datei herunter.

programm.py
Python 3.11
Konsole (Output)

                    

Lektion vollständig abgeschlossen!

Du hast alle Phasen gemeistert und kannst hier im Sandbox-Labor frei weiterprogrammieren.

Zur Übersicht →
Lektion beendet
>_

Benutzereingabe (input)

Dein Python-Programm wartet auf eine Eingabe

Tippe deine Eingabe ein und drücke Enter ↵ oder klicke auf Absenden.