Danke ja als ich eine Lösung gesucht habe um eine Position zu ändern habe ich online etwas über enumerate gefunden.kbr hat geschrieben: ↑Sonntag 9. Januar 2022, 14:26 Die Musterlösung sollte aus meiner Sicht einen besseren Funktionsnamen haben, "shelf" als Parameter erhalten und statt "range(0, len(shelf))" "enumerate" verwenden. Noch eleganter geht es mit der List-Methode "index" sowie einem Rückgabewert, der die Position des neuen Elements angibt oder einen anderen Wert hat, falls im Regal kein Platz mehr frei war.
@andie39: Wenn Du magst, versuche zur Übung die Aufgabe mit "enumerate" zu lösen und dann später auch noch den oben genannten Rückgabewert zu liefern.
Aber da es nicht im Kurs bisher vorkam geschaut, wie es mit dem bekannten Wissen gelöst werden kann.
Ich merke das mir immer doch etwas im Grundverständnis fehlt bzw ich falsche Gedankengänge entwickele.
Nachdem man mir das hier erklärt hat weiß ich warum meine Varianten nicht funktioniert haben und doch habe ich noch über eine andere Variante nachgedacht ohne range wo aber shelf vorkommt:
Code: Alles auswählen
shelf = ["Zaubersäge", "leer", "Wunderkekse", "Trickkarten", "leer"]
def add_shelf(article):
for i in shelf:
if i == "leer":
i in shelf = article
add_shelf("Hase“)
print(shelf)
Für mich sieht es immer noch logisch aus denn ich lese es nun so:
Wenn i == „leer“ dann soll i in liste shelf = den Wert
von article haben.
Es bleiben doch massive Verständnisprobleme