Discovery & Checkpoint
Gegeben ist folgender Code:
class Avatar:
def __init__(self, alias, mana):
self.alias = alias
self.mana = mana
held = Avatar("Kaelen", 110)
# Hier soll der Name auf der Konsole ausgegeben werdenWelche Zeile im Hauptprogramm (außerhalb der Klasse) gibt den Namen des Objekts held korrekt auf der Konsole aus?
Parsons Puzzle
Baue die Klasse Held und das Hauptprogramm Schritt für Schritt zusammen:
1. Definiere die Klasse Held und rücke den Konstruktor __init__ mit den Parametern name und rolle um 1 Tab ein.
2. Binde beide Parameter im Konstruktor an self (2 Tabs eingerückt).
3. Erzeuge im Hauptprogramm (0 Tabs) das Objekt spieler und gib erst spieler.name und danach spieler.rolle aus.
Tipp: Benutze die Anfasser zum Verschieben und ⇥- / ⇥+ zum Einrücken.
Scaffolding & Bugfix
Im folgenden Code fehlen wesentliche Bestandteile der Konstruktormethode und Attributbindung:
1. Ergänze die Unterstriche der speziellen Konstruktormethode __init__.
2. Binde den Parameter level mit self dauerhaft an das Objekt.
3. Korrigiere die Erzeugung des Objekts held, sodass "Kaelen" und Level 4 übergeben werden.
Tipp: Passe den Code im Editor an und klicke auf „Ausführen & Prüfen“.
class Charakter:
def __init__(self, name, level):
self.name = name
self.level = level
held = Charakter("Kaelen", 4)
print("Name:", held.name)
print("Level:", held.level)
Coding Challenge
Erstelle eine Klasse namens Held für einen Charakter-Generator:
1. Definiere die Methode __init__(self, name, rolle, energie).
2. Speichere alle drei Parameter als Instanzattribute (self.name, self.rolle, self.energie).
3. Erstelle eine Instanz spieler mit den Werten "Kaelen", "Gelehrter" und 110.
4. Gib die Eigenschaften des Objekts mit print() in genau folgendem Format aus:
Charakter: Kaelen
Klasse: Gelehrter
Energie: 110Tipp: Schreibe deinen Code in den Editor und klicke auf „Code testen“.
Test-Suite
class Held:
def __init__(self, name, rolle, energie):
self.name = name
self.rolle = rolle
self.energie = energie
spieler = Held("Kaelen", "Gelehrter", 110)
print("Charakter:", spieler.name)
print("Klasse:", spieler.rolle)
print("Energie:", spieler.energie)
Der Multiplayer-Charakter-Generator
Erweitere den Konstruktor um weitere Attribute wie gold, ausruestung (als Liste) oder titel.
Erstelle anschließend mehrere unterschiedliche Helden-Objekte in einer Liste und gib alle Datenblätter in einer Schleife formatiert aus!
Tipp: Passe den Code an, führe ihn aus oder lade dein fertiges Programm als Python-Datei herunter.
Lektion vollständig abgeschlossen!
Du hast alle Phasen gemeistert und kannst hier im Sandbox-Labor frei weiterprogrammieren.