Löschen einer Liste in Python

Rayven Esplanada 30 Januar 2023
  1. Verwenden Sie clear(), um eine Liste in Python zu löschen
  2. Legen Sie einen Wert für eine leere Liste fest, um eine Liste in Python zu löschen
  3. Verwendung von del und den Slice-Operator : zum eine Liste in Python zu löschen
  4. Multiplizieren Sie die gesamte Liste mit 0, um eine Liste in Python zu löschen
Löschen einer Liste in Python

Dieses Tutorial zeigt verschiedene Möglichkeiten zum Löschen einer Liste in Python.

Verwenden Sie clear(), um eine Liste in Python zu löschen

Der einfachste und naheliegendste Weg, eine Liste in Python zu löschen, ist die Verwendung der Methode clear(), einer vordefinierten Methode in Python-Listen.

Initialisieren Sie beispielsweise eine Liste mit ganzzahligen Werten und löschen Sie mit der Funktion clear() alle Werte.

lst = [1, 6, 11, 16]
print(lst)
lst.clear()
print(lst)

Ausgabe:

[1, 6, 11, 16]
[]
Hinweis
Dies ist eine schnelle und einfache Lösung zum Löschen einer Liste in Python, die jedoch nur mit Python-Versionen 3.3 und höher kompatibel ist.

Legen Sie einen Wert für eine leere Liste fest, um eine Liste in Python zu löschen

Eine andere Möglichkeit, eine vorhandene Listenvariable zu löschen, besteht darin, eine leere Liste mit einem leeren Paar eckiger Klammern [] auf die Variable zu setzen.

lst = [1, 6, 11, 16]
print(lst)

lst = []
print(lst)

Ausgabe:

[1, 6, 11, 16]
[]

Dies erledigt zwar auch ein schnelles Löschen einer Liste, entfernt jedoch nicht die Werte der Liste aus dem Speicher. Stattdessen wird eine neue Instanz einer Liste erstellt und auf die neu erstellte Instanz verwiesen.

Wenn keine andere Variable auf die vorherigen Werte der Listenvariablen verweist, sind diese Variablen nicht erreichbar und können nicht gespeichert werden.

Diese Situation kann deutlich gemacht werden, wenn zwei Variablen auf dieselbe Liste zeigen und anschließend eine dieser Variablen auf eine leere Liste setzen.

lst = [1, 6, 11, 16]
lst2 = lst
print(lst)
print(lst2)

lst = []
print(lst)
print(lst2)

Ausgabe:

[1, 6, 11, 16]
[1, 6, 11, 16]
[]
[1, 6, 11, 16]

Die zweite Liste, lst2, wurde auf den Wert von lst gesetzt, aber auch nachdem der neue Wert von lst auf eine leere Liste gesetzt wurde, behält die Liste lst2 die alten Werte von zuvor bei. In diesem Fall können die vorherigen Werte nicht für die Speicherbereinigung verwendet werden, da immer noch eine Variable darauf verweist.

Verwendung von del und den Slice-Operator : zum eine Liste in Python zu löschen

Das Python-Schlüsselwort del wird verwendet, um Objekte und ihre Referenzen im Speicher vollständig zu löschen. Das Schlüsselwort del wird verwendet, um Python-Objekte, Iterables, Teile von Listen usw. zu löschen.

Der Doppelpunktoperator : in Python ist ein Operator, mit dem Arrays in Teile zerlegt werden, die zwei ganzzahlige Argumente akzeptieren.

Mit dem Operator : wird die tatsächliche Referenz der Liste zum Löschen abgerufen.

lst = [1, 6, 11, 16]
lst2 = lst
print(lst)
print(lst2)

del lst[:]
print(lst)
print(lst2)

Eine andere Lösung, die das Gleiche tut, ohne das Schlüsselwort del zu verwenden, besteht darin, die Liste als leere Liste festzulegen, aber den Operator : zu verwenden, um die vorherige Referenz durch die leere Liste zu ersetzen.

lst = [1, 6, 11, 16]
lst2 = lst
print(lst)
print(lst2)

lst[:] = []
print(lst)
print(lst2)

Die Ausgabe beider Lösungen ist wie folgt:

[1, 6, 11, 16]
[1, 6, 11, 16]
[]
[]

Aus dem vorherigen Beispiel geht hervor, dass das Festlegen einer vorhandenen Listenvariablen auf eine leere Liste die vorherigen Werte nicht tatsächlich löscht. Diese Lösung löscht die vorherigen Werte vollständig, auch wenn andere Variablen auf dieselbe Referenz der Werte in der Hauptliste verweisen.

Multiplizieren Sie die gesamte Liste mit 0, um eine Liste in Python zu löschen

Die schnellste Methode zum Löschen einer Liste besteht darin, die gesamte Liste mit 0 zu multiplizieren. Durch Multiplizieren der Listenvariablen selbst mit 0 wird die Liste und die vorherige Referenz im Speicher gelöscht.

lst = [1, 6, 11, 16]
lst2 = lst
print(lst)
print(lst2)

lst *= 0
print(lst)
print(lst2)

Ausgabe:

[1, 6, 11, 16]
[1, 6, 11, 16]
[]
[]

Diese Methode ist die schnellste Lösung unter allen genannten Lösungen.

Zusammenfassend lässt sich sagen, dass der offensichtlichste Weg zum Löschen einer Liste die Verwendung der integrierten Funktion clear() in Listen ist. Die Lösung mit der schnellsten Leistung wäre jedoch, die Listenvariable mit dem Wert 0 zu multiplizieren.

Rayven Esplanada avatar Rayven Esplanada avatar

Skilled in Python, Java, Spring Boot, AngularJS, and Agile Methodologies. Strong engineering professional with a passion for development and always seeking opportunities for personal and career growth. A Technical Writer writing about comprehensive how-to articles, environment set-ups, and technical walkthroughs. Specializes in writing Python, Java, Spring, and SQL articles.

LinkedIn

Verwandter Artikel - Python List