Heim >Backend-Entwicklung >Python-Tutorial >Wie kann ich doppelte Elemente effizient aus einer Python-Liste entfernen?

Wie kann ich doppelte Elemente effizient aus einer Python-Liste entfernen?

Linda Hamilton
Linda HamiltonOriginal
2024-12-03 16:24:11474Durchsuche

How Can I Efficiently Remove Duplicate Elements from a Python List?

Duplikate aus einer Python-Liste entfernen

Problemstellung

Extrahieren Sie anhand einer Werteliste die eindeutigen Elemente aus der Liste.

Lösung 1: Schleife durch die Liste

Ein Ansatz besteht darin, jedes Element in der Liste zu durchlaufen und hinzuzufügen Fügen Sie es einer neuen Liste hinzu, sofern es noch nicht vorhanden ist. Dies wird im folgenden Code demonstriert:

output = []
for x in trends:
    if x not in output:
        output.append(x)

Lösung 2: In einen Satz konvertieren

Ein eher pythonischer Ansatz besteht darin, einen Satz zum Entfernen von Duplikaten zu verwenden. Mengen sind ungeordnete Sammlungen einzigartiger Elemente. Sie können eine Liste in einen Satz umwandeln und sie dann wieder in eine Liste umwandeln, um die Reihenfolge beizubehalten.

mylist = ['nowplaying', 'PBS', 'PBS', 'nowplaying', 'job', 'debate', 'thenandnow']
myset = set(mylist)
mynewlist = list(myset)

Lösung 3: Zunächst Sätze verwenden

Sie können auch einen Satz aus dem verwenden Anfang, der von Natur aus einzigartig ist. Dieser Ansatz ist schneller als das Erstellen einer Liste und das Konvertieren in eine Menge.

output = set()
for x in trends:
    output.add(x)

Überlegungen

  • Sets behalten nicht die ursprüngliche Reihenfolge der Elemente bei. Wenn die Beibehaltung der Reihenfolge erforderlich ist, ziehen Sie eine Implementierung mit geordneten Mengen in Betracht.
  • Wenn die Liste klein ist, ist das Durchlaufen der Liste eine akzeptable Lösung. Bei größeren Listen ist die Verwendung eines Sets effizienter.

Das obige ist der detaillierte Inhalt vonWie kann ich doppelte Elemente effizient aus einer Python-Liste entfernen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn