Heim > Backend-Entwicklung > Python-Tutorial > Wie können wir aufeinanderfolgende doppelte Elemente aus einer Liste in Python entfernen?

Wie können wir aufeinanderfolgende doppelte Elemente aus einer Liste in Python entfernen?

Linda Hamilton
Freigeben: 2024-12-01 01:12:11
Original
237 Leute haben es durchsucht

How Can We Eliminate Consecutive Duplicate Elements from a List in Python?

Eliminieren aufeinanderfolgender Duplikate in Listenelementen: Über das einfache Entfernen hinaus zur Elementeliminierung

Während der erste Ansatz erfolgreich aufeinanderfolgende Duplikate aus den Listenelementen entfernte, Es gelang nicht, die Elemente selbst zu beseitigen. Um dies zu erreichen, ist eine verfeinerte Strategie erforderlich.

Die durch itertools.groupby() bereitgestellte Lösung bietet einen effizienten Ansatz. Es gruppiert aufeinanderfolgende Elemente und gibt den Schlüssel für jede Gruppe zurück. Durch Auswahl der Schlüssel können wir die eindeutigen Elemente in der Liste abrufen:

L = [1,1,1,1,1,1,2,3,4,4,5,1,2]
from itertools import groupby
[key for key, _group in groupby(L)]
Nach dem Login kopieren

Für den zweiten Teil der Frage, bei dem das Ziel darin besteht, Elemente mit aufeinanderfolgenden Duplikaten zu eliminieren, wird der geänderte Code innerhalb der Gruppe von( )-Anweisung erfüllt diese Anforderung:

[k for k, g in groupby(L) if sum(1 for i in g) < 2]
Nach dem Login kopieren

Dieser Ansatz verwendet einen Generatorausdruck, um die Anzahl der Elemente in jeder Gruppe zu berechnen. Durch die Auswahl von Schlüsseln für Gruppen mit weniger als zwei Elementen eliminieren wir effektiv die aufeinanderfolgenden Duplikate. Das Ergebnis ist eine prägnante und elegante Lösung.

Das obige ist der detaillierte Inhalt vonWie können wir aufeinanderfolgende doppelte Elemente aus einer Liste in Python entfernen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage