Direkt zum Inhalt

Wie man ein Element aus einer Liste in Python entfernt

Verstehe, wie man in Python Elemente aus einer Liste entfernt. Mache dich mit Methoden wie remove(), pop() und del für die Listenverwaltung vertraut.
Aktualisierte 15. Jan. 2025  · 7 Min. Lesezeit

Listen kommen in der Python-Programmierung häufig vor, und das aus gutem Grund. Sie helfen Analysten, Daten zu organisieren, zu verwalten und zu verarbeiten. Zum Beispiel wachsen oder schrumpfen sie dynamisch, wenn die Daten eine variable Länge haben. Listen können auch leicht in andere Datentypen oder Strukturen wie Tupel oder Arrays umgewandelt werden. Sie werden sogar als Bausteine in fortgeschritteneren Algorithmen verwendet, die das Suchen, Sortieren und Iterieren von Daten erfordern.

Da Python eine vielseitige Programmiersprache ist, gibt es viele Möglichkeiten, ein Element aus einer Liste in Python zu entfernen. In diesem Lernprogramm werden wir uns einige wichtige Methoden ansehen, darunter eingebaute Funktionen wie remove() und pop(), Listenauflösungen und das Schlüsselwort del.

Wenn du ein angehender Datenanalyst oder Datenwissenschaftler bist, empfehle ich dir den Kurs "Einführung in Python " von DataCamp, um die Grundkenntnisse der Python-Programmierung zu erlernen. Das Python Cheat Sheet for Beginners ist auch ein hilfreiches Nachschlagewerk, um die Syntax der verschiedenen Python-Funktionen zu beherrschen. 

3 Schnelle Methoden zum Entfernen von Listenelementen

Du kannst eine der folgenden Methoden verwenden, um ein Element aus einer Liste zu entfernen. Im ersten Fall können wir die Funktion remove() verwenden. 

# Initialize a list with integers from 1 to 5
my_list = [1, 2, 3, 4, 5]
# Remove the element with the value 5 from the list
my_list.remove(5)

Wir können auch die Funktion pop() verwenden. 

# Removes the last element from the list
last_element = my_list.pop()

Wir können auch das Schlüsselwort del verwenden.

# Remove item at index 4
del my_list[4]

In jedem der oben genannten Fälle wird die neue Liste [1, 2, 3, 4] sein, nachdem das Element entfernt wurde.

Python-Listen verstehen

Python-Listen sind geordnete Sammlungen von Elementen, die zum Speichern beliebiger Datentypen verwendet werden. Python-Listen sind vielseitig und dynamisch und ermöglichen verschiedene Arten der Datenmanipulation. Aufgrund ihrer Flexibilität werden Listen in Python in folgenden Fällen eingesetzt:

  • Datenspeicherung: Listen werden verwendet, um Sammlungen von Elementen zu speichern, z. B. Zeichenketten, Zahlen und Objekte.
  • Datenbearbeitung: Listen können für verschiedene Aufgaben der Datenmanipulation und -umwandlung verwendet werden, z. B. zum Hinzufügen, Entfernen oder Ändern von Elementen. 
  • Iteration: Listen werden in der Iteration verwendet, um jedes Element der Reihe nach aufzurufen und zu bearbeiten.

Außerdem ist es wichtig zu wissen, dass Python-Listen veränderbar sind, d.h. sie können auch nach der Erstellung noch geändert werden. Daher kann man die Elemente in der Liste nach Bedarf hinzufügen, entfernen oder ändern.

Detaillierte Techniken zum Entfernen von Elementen aus einer Liste in Python

Python hat verschiedene Methoden, um Elemente aus einer Liste zu entfernen. Zu diesen Techniken gehören die eingebaute Methode, Schlüsselwörter und Listenauflösungen.

Verwendung der Funktion remove()

Die Funktion remove() ist die in Python eingebaute Methode zum Entfernen eines Elements aus einer Liste. Die Funktion remove() ist wie unten dargestellt.

list.remove(item)

Im Folgenden findest du ein einfaches Beispiel für die Verwendung der Funktion remove(). Die Funktion entfernt den Eintrag mit dem Wert 3 aus der Liste.

Die Funktion remove() entfernt nur das erste Vorkommen eines Elements in einer Liste, wenn es Duplikate in derselben Liste gibt. Im folgenden Beispiel wird mit der Funktion remove() nur das erste Vorkommen von 3 aus der Liste entfernt.

# Define a list with some elements
my_list = [1, 2, 3, 4, 3]

# Use the remove() method to delete 3 from the list
# The remove() method removes the first occurrence of the specified value
my_list.remove(3)

# Print the list after removing 3
print(my_list)
[1, 2, 4, 3]

Die Funktion remove() gibt einen Wertfehler zurück, wenn ein Element nicht in der Liste enthalten ist. Deshalb ist es wichtig, eine Ausnahme hinzuzufügen, um solche Szenarien zu behandeln. Der folgende Code zeigt ein Beispiel für das Abfangen des Fehlers für Elemente, die nicht in der Liste enthalten sind.

# Initialize a list with color strings
colors = ["red", "green", "blue"]

# Try to remove the color "yellow" from the list
try:
    colors.remove("yellow")
# Catch the ValueError exception if "yellow" is not found in the list
except ValueError as e:
    print(e) 
list.remove(x): x not in list

Verwendung der Funktion pop()

Die Funktion pop() entfernt ein Element aus einer Liste nach Index. Die Syntax der Funktion pop() ist unten dargestellt.

list.pop(index)

Das folgende Beispiel zeigt, wie du mit der Funktion pop() einen bestimmten Eintrag aus einer Liste entfernen kannst, indem du den Index angibst. Beachte, dass du das entfernte Element als neue Liste speichern und zurückgeben kannst.

# Initialize a list with integers from 1 to 5
my_list = [1, 2, 3, 4, 5]

# Remove and return the element at index 2 (third element) from the list
removed_item = my_list.pop(2)

# Print the updated list after removing the element
print(my_list)
print(removed_item)
[1, 2, 4, 5]
3

Wenn du keinen Index für das Element angibst, das aus der Liste entfernt werden soll, entfernt die Funktion pop() standardmäßig das letzte Element in der Liste.

Wenn du in Python den ersten Eintrag aus einer Liste entfernen willst, gibst du den Index als 0 an und verwendest die Funktion pop().

# Initialize a list with string elements from 'a' to 'd'
my_list = ["a", "b", "c", "d"]

# Remove and return the element at index 0 (the first element) from the list
removed_item = my_list.pop(0)

# Print the updated list after removing the element
print(my_list)
print(removed_item)
['b', 'c', 'd']
a

Wenn du das letzte Element aus einer Liste entfernen möchtest, gibst du mit der Funktion pop() den letzten Index als -1 an.

# Initialize a list with string elements from 'a' to 'd'
my_list = ["a", "b", "c", "d"]

# Remove and return the element at index -1 (the last element) from the list
removed_item = my_list.pop(-1)

# Print the updated list after removing the last element
print(my_list)
print(removed_item)
['a', 'b', 'c']
d

Wenn ein Element außerhalb des Bereichs der Liste liegt, löst die Funktion pop() eine IndexError aus. Um die Indizes zu behandeln, die außerhalb des Bereichs liegen, solltest du den try-except-Block verwenden.

# Initialize a list with integers from 1 to 5
my_list = [1, 2, 3, 4, 5]

# Attempt to remove and return the element at index 10
# This will raise an IndexError because index 10 is out of range for the list
try:
    removed_item = my_list.pop(10)
# Catch the IndexError exception if the index is out of range
except IndexError as e:
    print(e) 
pop index out of range

In unserem letzten Tutorial über die Verwendung der Python pop()-Methode erfährst du mehr über das Entfernen von Elementen aus einer Liste mit dieser Methode.

Das Schlüsselwort del verwenden

Das Schlüsselwort del ist nützlich, um in Python Elemente oder Slices aus einer Liste zu entfernen. Die Syntax für das Entfernen eines einzelnen Elements aus der Liste ist unten dargestellt.

del list[index]

Das folgende Beispiel zeigt, wie du mit dem Schlüsselwort del ein einzelnes Element aus einer Liste entfernst.

# Initialize a list with integers from 1 to 5
my_list = [1, 2, 3, 4, 5]

# Remove item at index 2
del my_list[2]
print(my_list)
[1, 2, 4, 5]

Ebenso bietet das Schlüsselwort del die Möglichkeit, einen Teil der Elemente aus einer Liste zu entfernen. Die Syntax für das Entfernen mehrerer Artikel ist unten dargestellt:

  • start gibt den Beginn des Index des Slicings an.

  • end zeigt das Ende des Index des Slicings an.

del list[start:end]

Das folgende Beispiel zeigt die Slicing-Technik, bei der mit dem Schlüsselwort del mehrere Elemente aus einer Liste entfernt werden.

# Initialize a list with integers from 1 to 5
my_list = [1, 2, 3, 4, 5]

# Delete the elements from index 1 to index 2 (elements 2 and 3) from the list
# This modifies the list to [1, 4, 5]
del my_list[1:3]
print(my_list) 
[1, 4, 5]

Das Schlüsselwort del entfernt auch mehrere Elemente aus einer Liste mit der Schrittmethode. Die Syntax der Schrittmethode wird im Folgenden dargestellt:

  • start gibt den Beginn des Index des Slicings an.

  • end zeigt das Ende des Index des Slicings an.

  • step zeigt die Intervalle zwischen den Slicings an (standardmäßig 1).

del list[start:end:step]

Das folgende Beispiel zeigt, wie du mit der Schrittmethode Elemente aus einer Liste entfernst.

# Initialize a list with integers from 1 to 8
my_list = [1, 2, 3, 4, 5, 6, 7, 8]

# Delete elements from the list using slicing with a step of 2
del my_list[::2]
print(my_list)
[2, 4, 6, 8]

Die Vorteile der Verwendung des Schlüsselworts del beim Entfernen von Elementen aus der Liste sind folgende

  • Effizienz: Das Schlüsselwort del ist speichereffizient, da es dir erlaubt, Elemente an Ort und Stelle zu entfernen, was die Leistung verbessert.

  • Vielseitigkeit: Mit der Schrittmethode ist das Schlüsselwort del nützlich, um einzelne Elemente, Slices oder Elemente und mehrere Elemente aus einer Liste zu entfernen.

Die Verwendung des Schlüsselworts del zum Entfernen von Elementen aus einer Liste kann jedoch zu Indexierungsfehlern führen, insbesondere wenn ein Element außerhalb des Bereichs liegt. Deshalb ist es wichtig, den try-except-Block zu verwenden, um die IndexError abzufangen.

# Initialize a list with integers 1, 2, and 3
my_list = [1, 2, 3]

# Attempt to delete the element at index 5
# This will raise an IndexError because index 5 is out of range for the list
try:
    del my_list[5]
# Catch the IndexError exception if the index is out of range
except IndexError as e:
    print(e) 
list assignment index out of range

Wenn du die del Schlüsselwörter verwendest, solltest du bei der Angabe der Slices vorsichtig sein, um unbeabsichtigte Löschungen zu vermeiden, die schwer zu beheben sind.

Listenauflösungen verwenden

Als letzten Abschnitt können wir uns mit den Listenverständnissen beschäftigen. Mit List Comprehensions kannst du aus einer bestehenden Liste neue Listen erstellen und dabei einige Elemente ausschließen. Diese Technik eignet sich am besten, wenn du ein Element aufgrund bestimmter Bedingungen aus einer Liste entfernst. 

# Initialize a list with integers from 1 to 5
my_list = [1, 2, 3, 4, 5]

# Create a new list that includes all items from my_list except for the value 3
new_list = [item for item in my_list if item != 3]
print(new_list)
[1, 2, 4, 5]

Auf ähnliche Weise können Listenauflösungen verwendet werden, um Elemente basierend auf einer Bedingung zu entfernen. Das folgende Beispiel zeigt, wie man Listenverständnis verwendet, um gerade Zahlen aus der ursprünglichen Liste zu entfernen.

# Initialize a list of integers from 1 to 10
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

# Create a new list containing only the odd numbers from the original list
odd_numbers = [num for num in numbers if num % 2 != 0]
print(odd_numbers)
[1, 3, 5, 7, 9]

Die Verwendung des Listenverständnisses in Listen bietet Flexibilität bei der Handhabung komplexer Szenarien, z. B. bei der Umwandlung von Daten in ein neues Format oder bei der Erstellung von Listen aus bestehenden Datenstrukturen. 

Das folgende Beispiel zeigt, wie du das Listenverständnis verwendest, um Zeichenketten in Großbuchstaben umzuwandeln und bestimmte Elemente zu filtern.

# Initialize a list of fruit names
words = ["apple", "banana", "cherry", "avocado", "grape"]

# Create a new list containing the uppercase versions of words that start with the letter 'a'
a_words_upper = [word.upper() for word in words if word.startswith("a")]
print(a_words_upper)
['APPLE', 'AVOCADO']

List Comprehensions können auch dazu verwendet werden, andere Operationen in verschachtelten List Comprehensions zu reduzieren und durchzuführen. Im folgenden Beispiel wurde das Listenverständnis verwendet, um die Liste zu glätten und die ungeraden Zahlen zu entfernen.

# Initialize a list containing sublists of integers
list_of_lists = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]

# Create a flat list of even numbers by iterating through each sublist
# and checking if each number is even
flat_even_numbers = [num for sublist in list_of_lists for num in sublist if num % 2 == 0]
print(flat_even_numbers) 
[2, 4, 6, 8]

Tabelle zum Vergleich

Technik Anwendungsfall Wenn nützlich
remove() Bestimmte Elemente aus einer Liste entfernen Beim Entfernen von Elementen aus einer Liste und der Behandlung von Duplikaten
pop() Entfernen und Zurückgeben von Elementen aus einer angegebenen Liste Wenn du das entfernte Element aus der Liste zurückgeben willst
del Elemente oder Slices von Elementen aus einer Liste entfernen Beim Entfernen mehrerer Elemente oder Löschen von Elementen in einer Liste
Verständnis der Liste Erstelle eine neue Liste basierend auf den Bedingungen der bestehenden Liste Für komplexe Listenoperationen, einschließlich Filterung

Wenn du mehr über die Listenmanipulation bei der Datenanalyse erfahren möchtest, solltest du unseren Lernpfad zum Datenanalysten mit Python durchlaufen, um deine analytischen Fähigkeiten zu erweitern.

Umgang mit mehreren Vorkommnissen und Bedingungen

Wenn du mit Listen in Python arbeitest, kann es vorkommen, dass du mehrere Elemente aus einer Liste entfernen musst. In solchen Fällen benötigst du eine Schleife, um die Elemente zu iterieren und zu entfernen.

Schleife und remove() verwenden

Das folgende Beispiel zeigt, wie man die Schleife und die Funktion remove() verwendet, um mehrere Einträge aus einer Liste zu entfernen.

# Initialize a list of integers
my_list = [1, 2, 3, 2, 4, 2, 5]

# Item to remove
item_to_remove = 2

# Loop to remove all occurrences
while item_to_remove in my_list:
    my_list.remove(item_to_remove)
print(my_list)
[1, 3, 4, 5]

Schleifen- und Listenverstehen verwenden

Du kannst auch eine Schleife im Listenverständnis verwenden, um mehrere Vorkommen eines Elements aus einer Liste zu entfernen.

# Initialize a list of integers
my_list = [1, 2, 3, 2, 4, 2, 5]

# Item to remove
item_to_remove = 2

# List comprehension to remove all occurrences
new_list = [item for item in my_list if item != item_to_remove]
print(new_list)
[1, 3, 4, 5]

Fazit

Es ist wichtig zu wissen, wann und wie du die verschiedenen Methoden zur Listenmanipulation in deiner Analyseaufgabe anwenden kannst. Außerdem solltest du wissen, wie du Fehler abfängst, Randfälle behandelst und komplexe Methoden bei der Listenmanipulation verwendest. Ich möchte dich ermutigen, mit den oben beschriebenen Methoden in deiner Praxis zu experimentieren, um den am besten geeigneten Ansatz für deine verschiedenen Analysen zu finden.

Wenn du mehr über Python für die Datenanalyse erfahren möchtest, solltest du unseren Lernpfad Python Grundlagen ausprobieren, der einen umfassenden Leitfaden zur Datenbearbeitung und -umwandlung enthält. Der Lernpfad für Python-Programmierung und der Lernpfad für Python-Entwickler/innen von DataCamp bieten dir umfassende Fähigkeiten, um ein neues Kapitel in deiner Karriere aufzuschlagen.


Allan Ouko's photo
Author
Allan Ouko
LinkedIn
Ich verfasse Artikel, die Datenwissenschaft und Analytik vereinfachen und leicht verständlich und zugänglich machen.

Häufig gestellte Fragen

Wie entferne ich ein Element aus einer Liste?

Die eingebaute Funktion remove() ist nützlich, um das erste Vorkommen eines Elements in einer Liste zu entfernen.

Wie gehst du mit Duplikaten in einer Liste um?

Du kannst Duplikate in einer Liste mit Hilfe einer Schleife in der Funktion remove() oder einer Schleife im Listenverständnis entfernen.

Kannst du beim Iterieren einer Liste Elemente entfernen?

Du kannst das Listenverständnis verwenden, um Elemente aus einer Liste zu entfernen, während du über sie iterierst.

Was ist der Unterschied zwischen den Funktionen remove() und pop()?

Die Funktion remove() entfernt ein Element aus einer Liste und gibt die neue Liste zurück, während die Funktion pop() ein Element aus einer Liste entfernt und die neue Liste mit dem entfernten Element zurückgibt.

Themen

Lerne Python mit DataCamp

Zertifizierung verfügbar

Kurs

Python Toolbox

4 hr
287.1K
Baue deine modernen Data Science-Fähigkeiten weiter aus, indem du etwas über Iteratoren und Listenauflösungen lernst.
Siehe DetailsRight Arrow
Kurs starten
Mehr anzeigenRight Arrow