Python Listen meistern: Umfassender Leitfaden
Sequenzen in Python
Die grundlegendste Datenstruktur in Python ist die Sequenz. Jedes Element einer Sequenz erhält eine Nummer – seine Position oder Index. Der erste Index ist null, der zweite eins, usw.
Python hat sechs eingebaute Sequenztypen, die häufigsten sind Listen und Tupel, die wir in diesem Tutorial behandeln.
Es gibt bestimmte Operationen, die Sie mit allen Sequenztypen durchführen können: Indizierung, Slicing, Hinzufügen, Multiplizieren und Mitgliedschaftsprüfung. Zusätzlich bietet Python eingebaute Funktionen für die Länge einer Sequenz und für das Finden des größten und kleinsten Elements.
Python Listen
Die Liste ist der vielseitigste Datentyp in Python, der als Liste kommagetrennter Werte (Elemente) zwischen eckigen Klammern geschrieben wird. Wichtig: Elemente in einer Liste müssen nicht vom gleichen Typ sein.
Eine Liste zu erstellen ist so einfach wie das Einfügen verschiedener kommagetrennter Werte zwischen eckige Klammern. Zum Beispiel:
list1 = ['physics', 'chemistry', 1997, 2000]; list2 = [1, 2, 3, 4, 5]; list3 = ["a", "b", "c", "d"]
Ähnlich wie String-Indizes beginnen Listen-Indizes bei 0, und Listen können gesliced, konkateniert usw. werden.
Zugriff auf Werte in Listen
Für den Zugriff auf Werte in Listen verwenden Sie eckige Klammern für Slicing zusammen mit dem Index oder den Indizes, um den an diesem Index verfügbaren Wert zu erhalten. Zum Beispiel:
#!/usr/bin/python list1 = ['physics', 'chemistry', 1997, 2000]; list2 = [1, 2, 3, 4, 5, 6, 7]; print "list1[0]: ", list1[0] print "list2[1:5]: ", list2[1:5]
Wenn der obige Code ausgeführt wird, erzeugt er folgendes Ergebnis:
list1[0]: physics list2[1:5]: [2, 3, 4, 5]
Listen aktualisieren
Sie können einzelne oder mehrere Elemente von Listen aktualisieren, indem Sie den Slice auf der linken Seite des Zuweisungsoperators angeben, und Sie können Elemente mit der append()-Methode zu einer Liste hinzufügen. Zum Beispiel:
#!/usr/bin/python list = ['physics', 'chemistry', 1997, 2000]; print "Value available at index 2 : " print list[2] list[2] = 2001; print "New value available at index 2 : " print list[2]
Hinweis – Die append()-Methode wird im nächsten Abschnitt besprochen.
Wenn der obige Code ausgeführt wird, erzeugt er folgendes Ergebnis:
Value available at index 2 : 1997 New value available at index 2 : 2001
Listenelemente löschen
Um ein Listenelement zu entfernen, können Sie entweder die del-Anweisung verwenden, wenn Sie genau wissen, welches Element(e) Sie löschen, oder die remove()-Methode, wenn Sie es nicht wissen. Zum Beispiel:
#!/usr/bin/python list1 = ['physics', 'chemistry', 1997, 2000]; print list1 del list1[2]; print "After deleting value at index 2 : " print list1
Wenn der obige Code ausgeführt wird, erzeugt er folgendes Ergebnis:
['physics', 'chemistry', 1997, 2000] After deleting value at index 2 : ['physics', 'chemistry', 2000]
Hinweis – Die remove()-Methode wird im nächsten Abschnitt besprochen.
Grundlegende Listenoperationen
Listen reagieren auf die Operatoren + und * ähnlich wie Strings; sie bedeuten hier Konkatenation und Wiederholung, außer dass das Ergebnis eine neue Liste ist, kein String.
Tatsächlich reagieren Listen auf alle allgemeinen Sequenzoperationen, die wir im vorigen Kapitel bei Strings verwendet haben.
| Python-Ausdruck | Ergebnis | Beschreibung |
|---|---|---|
| len([1, 2, 3]) | 3 | Länge |
| [1, 2, 3] + [4, 5, 6] | [1, 2, 3, 4, 5, 6] | Konkatenation |
| ['Hi!'] * 4 | ['Hi!', 'Hi!', 'Hi!', 'Hi!'] | Wiederholung |
| 3 in [1, 2, 3] | True | Mitgliedschaft |
| for x in [1, 2, 3]: print x, | 1 2 3 | Iteration |
Indizierung, Slicing und Matrizen
Da Listen Sequenzen sind, funktionieren Indizierung und Slicing genauso wie bei Strings.
Angenommene Eingabe:
L = ['spam', 'Spam', 'SPAM!']
| Python-Ausdruck | Ergebnis | Beschreibung |
|---|---|---|
| L[2] | SPAM! | Offsets beginnen bei null |
| L[-2] | Spam | Negativ: Zählen von rechts |
| L[1:] | ['Spam', 'SPAM!'] | Slicing holt Abschnitte |
Eingebaute Listen-Funktionen & Methoden
Python enthält folgende Listenfunktionen:
| Nr. | Funktion & Beschreibung |
|---|---|
| 1 | cmp(list1, list2) – Vergleicht Elemente beider Listen. |
| 2 | len(list) – Gibt die Gesamtlänge der Liste. |
| 3 | max(list) – Gibt Element mit maximalem Wert zurück. |
| 4 | min(list) – Gibt Element mit minimalem Wert zurück. |
| 5 | list(seq) – Konvertiert ein Tupel in eine Liste. |
Python enthält folgende Listenmethoden:
| Nr. | Methode & Beschreibung |
|---|---|
| 1 | list.append(obj) – Fügt Objekt obj an Liste an |
| 2 | list.count(obj) – Gibt Anzahl zurück, wie oft obj in Liste vorkommt |
| 3 | list.extend(seq) – Fügt Inhalt von seq an Liste an |
| 4 | list.index(obj) – Gibt niedrigsten Index zurück, an dem obj erscheint |
| 5 | list.insert(index, obj) – Fügt obj an Offset index in Liste ein |
| 6 | list.pop(obj=list[-1]) – Entfernt und gibt letztes Objekt oder obj zurück |
| 7 | list.remove(obj) – Entfernt Objekt obj aus Liste |
| 8 | list.reverse() – Kehrt Objekte der Liste an Ort und Stelle um |
| 9 | list.sort([func]) – Sortiert Objekte der Liste, nutzt compare func falls gegeben |
Python
- Python-Datentypen meistern: Praxisleitfaden
- Python-Operatoren meistern: Umfassender Leitfaden
- Python pass-Statement meistern: Praxisleitfaden
- Python-Funktionsargumente meistern: Positional, Keyword & Default-Parameter
- Pythons range()-Funktion meistern: Von Grundlagen bis zu fortgeschrittenen Anwendungsfällen
- Python Lists meistern: Append, Sort, Length & List Comprehensions (Praxis-Guide)
- Durchschnitt berechnen in Python: Praktischer Leitfaden
- Python list.count(): Experten-Guide mit praktischen Beispielen
- Duplikate aus Python-Listen entfernen: 8 bewährte Methoden
- Elemente aus Python-Listen entfernen: remove(), pop(), clear() und del