Länge und das letzte Element
Oft weißt du nicht, wie viele Elemente eine Liste hat. Vielleicht hat ein anderer Teil des Programms sie gefüllt, oder die Anzahl der Elemente ändert sich, während das Programm läuft (wie du Elemente hinzufügst und entfernst, lernst du in den nächsten Übungen). Du kannst es immer mit len() herausfinden (Abkürzung für length, „Länge“):
schueler = ["Anna", "Jonas", "Lena", "Max", "Sophie"]
print(len(schueler))Das gibt Folgendes aus:
5Wie print() ist len() eine Funktion: ein Befehl, den du benutzt, indem du seinen Namen schreibst und in Klammern den Wert, mit dem er arbeiten soll. len() liefert dir eine Zahl, du kannst sie also in einer Variablen speichern, damit rechnen oder mit einer Beschriftung ausgeben: print("Schüler:", len(schueler)) gibt Schüler: 5 aus.
Mit len() weißt du, wo das letzte Element ist. Indizes beginnen bei 0, deshalb ist der letzte Index immer um eins kleiner als die Anzahl der Elemente: Eine Liste mit 5 Elementen hat die Indizes 0, 1, 2, 3 und 4. Das letzte Element steht also bei Index len(schueler) - 1:
print(schueler[len(schueler) - 1])Das gibt Folgendes aus:
SophiePython berechnet zuerst den Index in den eckigen Klammern (5 − 1 = 4) und liest dann das Element bei diesem Index. Ein häufiger Fehler ist, das - 1 zu vergessen: schueler[len(schueler)] fragt nach Index 5, wo es kein Element gibt, und endet mit IndexError: list index out of range.
Du brauchst das letzte Element so oft, dass Python eine Abkürzung dafür hat: negative Indizes, die vom Ende aus zählen. Index -1 ist das letzte Element, -2 das vorletzte und so weiter:
print(schueler[-1])
print(schueler[-2])Das gibt Folgendes aus:
Sophie
Maxschueler[-1] ist immer das letzte Element, egal wie lang die Liste ist. Deshalb schreiben Python-Programmierer es statt schueler[len(schueler) - 1].
So schreibst du es:
Anweisungen
- 1
Gib die Anzahl der Kollegen mit einer Beschriftung aus:
print("Kollegen:", len(kollegen)). Die Ausgabe sollKollegen: 3sein. - 2
Erstelle eine Variable
letzter_kollegeund speichere darin das letzte Element vonkollegen. Verwende einen negativen Index, nicht die Zahl2. - 3
Gib
letzter_kollegeaus.