Python-Listen-Operationen: Erstellung, Zugriff, Modifikation und fortgeschrittene Techniken
Python-Listen-Operationen
Python-Listen sind eine der vielseitigsten Datenstrukturen der Sprache und ermöglichen effizientes Speichern, Organisieren und Manipulieren von Wertesequenzen. Dieser Leitfaden deckt alles ab – von der Erstellung und dem Zugriff auf Listenelemente bis hin zu fortgeschrittenen Techniken wie Slicing, Comprehensions und eingebauten Methoden.
Video: Python-Listen und Tupel
Python-Listen erlauben die gleichzeitige Arbeit mit mehreren Elementen. Zum Beispiel:
# eine Liste von Programmiersprachen
['Python', 'C++', 'JavaScript']
Python-Listen erstellen
Eine Liste wird erstellt, indem Elemente in eckige Klammern [] gesetzt und durch Kommas getrennt werden. Listen können beliebig viele Elemente enthalten und unterstützen gemischte Datentypen.
# Liste von Ganzzahlen
my_list = [1, 2, 3]
Beispiele:
# leere Liste
my_list = []
# gemischte Datentypen
my_list = [1, "Hallo", 3.4]
Eine Liste kann auch eine andere Liste enthalten, was eine verschachtelte Struktur erzeugt.
# verschachtelte Liste
my_list = ["Maus", [8, 4, 6], ["a"]]
Auf Listenelemente zugreifen
Python bietet mehrere Möglichkeiten, auf Elemente zuzugreifen.
Indexierung
Verwenden Sie den []-Operator. Indizes beginnen bei 0; der Zugriff auf einen Index außerhalb des Bereichs löst IndexError aus, nicht-ganzzahlige Indizes TypeError.
my_list = ['p', 'r', 'o', 'b', 'e']
print(my_list[0]) # p
print(my_list[2]) # o
print(my_list[4]) # e
n_list = ["Happy", [2, 0, 1, 5]]
print(n_list[0][1]) # a
print(n_list[1][3]) # 5
print(my_list[4.0]) # TypeError
Ausgabe
p o e a 5 Traceback (most recent call last): File "<string>", line 21, in <module> TypeError: list indices must be integers or slices, not float
Negative Indexierung
Negative Indizes zählen vom Ende der Liste: -1 ist das letzte Element, -2 das vorletzte usw.
my_list = ['p','r','o','b','e']
print(my_list[-1]) # e
print(my_list[-5]) # p
Ausgabe
e p

Listen-Slicing
Slicing extrahiert einen Bereich von Elementen mittels des Doppelpunkts :. Der Startindex ist inklusiv, der Endindex exklusiv.
my_list = ['p','r','o','g','r','a','m','i','z']
print(my_list[2:5]) # ['o', 'g', 'r']
print(my_list[5:]) # ['a', 'm', 'i', 'z']
print(my_list[:]) # vollständige Liste
Ausgabe
['o', 'g', 'r'] ['a', 'm', 'i', 'z'] ['p', 'r', 'o', 'g', 'r', 'a', 'm', 'i', 'z']
Hinweis: Slicing gibt eine neue Liste zurück; die Original-Liste bleibt unverändert.
Listenelemente modifizieren
Listen sind veränderbar. Sie können einzelne Elemente oder Slices ersetzen.
odd = [2, 4, 6, 8]
odd[0] = 1
print(odd)
odd[1:4] = [3, 5, 7]
print(odd)
Ausgabe
[1, 4, 6, 8] [1, 3, 5, 7]
Fügen Sie Elemente mit append() (einzeln) oder extend() (mehrere) hinzu. Verwenden Sie + für Konkatenation und * für Wiederholung.
odd = [1, 3, 5]
odd.append(7)
print(odd)
odd.extend([9, 11, 13])
print(odd)
print(odd + [9, 7, 5])
print(["re"] * 3)
Ausgabe
[1, 3, 5, 7] [1, 3, 5, 7, 9, 11, 13] [1, 3, 5, 9, 7, 5] ['re', 're', 're']
Fügen Sie Elemente an einem bestimmten Index mit insert() oder durch Zuweisung an einen leeren Slice ein.
odd = [1, 9]
odd.insert(1, 3)
print(odd)
odd[2:2] = [5, 7]
print(odd)
Ausgabe
[1, 3, 9] [1, 3, 5, 7, 9]
Listenelemente löschen
Verwenden Sie del, um Elemente per Index oder Slice zu entfernen, oder die gesamte Liste zu löschen. remove() löscht das erste passende Wert, pop() entfernt und gibt ein Element per Index zurück (oder das letzte Element, wenn kein Index angegeben). clear() leert die Liste.
my_list = ['p', 'r', 'o', 'b', 'l', 'e', 'm']
# einzelnes Element löschen
del my_list[2]
print(my_list)
# mehrere Elemente löschen
del my_list[1:5]
print(my_list)
# gesamte Liste löschen
del my_list
print(my_list) # NameError
Ausgabe
['p', 'r', 'b', 'l', 'e', 'm'] ['p', 'm'] Traceback (most recent call last): File "<string>", line 18, in <module> NameError: name 'my_list' is not defined
Alternative Löschung via Slice-Zuweisung:
>>> my_list = ['p','r','o','b','l','e','m']
>>> my_list[2:3] = []
>>> my_list
['p', 'r', 'b', 'l', 'e', 'm']
>>> my_list[2:5] = []
>>> my_list
['p', 'r', 'm']
Häufige Listenmethoden
| Methode | Beschreibung |
|---|---|
| append() | Fügt ein Element am Ende hinzu |
| extend() | Fügt alle Elemente eines anderen Iterables an |
| insert() | Fügt ein Element an einem angegebenen Index ein |
| remove() | Entfernt das erste Vorkommen eines Werts |
| pop() | Entfernt und gibt ein Element per Index zurück (oder das letzte) |
| clear() | Leert die Liste |
| index() | Gibt den Index des ersten Vorkommens eines Werts zurück |
| count() | Zählt Vorkommen eines Werts |
| sort() | Sortiert die Liste aufsteigend |
| reverse() | Kehrt die Listenreihenfolge um |
| copy() | Gibt eine flache Kopie zurück |
my_list = [3, 8, 1, 6, 8, 8, 4]
my_list.append('a')
print(my_list)
print(my_list.index(8)) # 1
print(my_list.count(8)) # 3
List Comprehension
List Comprehensions bieten eine prägnante Möglichkeit, Listen zu erzeugen.
pow2 = [2 ** x for x in range(10)]
print(pow2)
Ausgabe
[1, 2, 4, 8, 16, 32, 64, 128, 256, 512]
Äquivalent zu:
pow2 = []
for x in range(10):
pow2.append(2 ** x)
Comprehensions können mehrere for-Klauseln oder einen if-Filter enthalten.
>>> pow2 = [2 ** x for x in range(10) if x > 5]
>>> pow2
[64, 128, 256, 512]
>>> odd = [x for x in range(20) if x % 2 == 1]
>>> odd
[1, 3, 5, 7, 9, 11, 13, 15, 17, 19]
>>> [x+y for x in ['Python ','C '] for y in ['Language','Programming']]
['Python Language', 'Python Programming', 'C Language', 'C Programming']
Mehr erfahren in der offiziellen Python-Dokumentation.
Weitere Listenoperationen
Mitgliedschaftstest
Prüfen Sie, ob ein Wert existiert, mit in oder not in.
my_list = ['p', 'r', 'o', 'b', 'l', 'e', 'm']
print('p' in my_list) # True
print('a' in my_list) # False
print('c' not in my_list) # True
Ausgabe
True False True
Über eine Liste iterieren
Verwenden Sie eine for-Schleife, um jedes Element zu verarbeiten.
for fruit in ['apple','banana','mango']:
print("I like", fruit)
Ausgabe
I like apple I like banana I like mango
Python
- Python-Datentypen meistern: Praxisleitfaden
- Python-Operatoren meistern: Umfassender Leitfaden
- Python pass-Statement meistern: Praxisleitfaden
- Python-Funktionsargumente meistern: Positional, Keyword & Default-Parameter
- Pythons time.sleep() meistern: Best Practices, Multithreading und Praxisbeispiele
- 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