Eine Liste ist ein Container, der verschiedene Python-Objekte enthält, die Ganzzahlen, Wörter, Werte usw. sein können. Sie entspricht einem Array in anderen Programmiersprachen.
Hier werden verschiedene Möglichkeiten beschrieben, wie wir Duplikate aus einer bestimmten Liste entfernen können.
In diesem Tutorial lernen Sie:
- Entfernen Sie Duplikate mit Set aus der Liste
- Entfernen Sie Duplikate mithilfe der temporären Liste aus einer Liste.
- Entfernen Sie Duplikate mit Dict aus der Liste
- Entfernen Sie Duplikate mit der for-Schleife aus einer Liste
- Entfernen Sie Duplikate mithilfe des Listenverständnisses aus der Liste
- Entfernen Sie Duplikate mit der Methode Numpy unique () aus der Liste.
- Entfernen Sie Duplikate mit Pandas-Methoden aus der Liste
- Entfernen Sie Duplikate mit enumerate () und Listenverständnis
Entfernen Sie Duplikate mit Set aus der Liste
Um die Duplikate aus einer Liste zu entfernen, können Sie den integrierten Funktionssatz () verwenden. Die Besonderheit der set () -Methode besteht darin, dass sie unterschiedliche Elemente zurückgibt.Wir haben eine Liste: [1,1,2,3,2,2,4,5,6,2,1]. Die Liste enthält viele Duplikate, die wir entfernen und nur die einzelnen Elemente zurückerhalten müssen. Die Liste wird an die integrierte Funktion set () übergeben. Später wird die endgültige Liste mit der integrierten Funktion list () angezeigt, wie im folgenden Beispiel gezeigt.
Die Ausgabe, die wir erhalten, sind unterschiedliche Elemente, bei denen alle doppelten Elemente entfernt werden.
my_list = [1,1,2,3,2,2,4,5,6,2,1]my_final_list = set(my_list)print(list(my_final_list))
Ausgabe:
[1, 2, 3, 4, 5, 6]
Entfernen Sie Duplikate mithilfe der temporären Liste aus einer Liste
Um Duplikate aus einer bestimmten Liste zu entfernen, können Sie eine leere temporäre Liste verwenden. Dazu müssen Sie zuerst die Liste mit Duplikaten durchlaufen und die eindeutigen Elemente zur temporären Liste hinzufügen. Später wird die temporäre Liste der Hauptliste zugewiesen.
Hier ist ein Arbeitsbeispiel mit einer temporären Liste.
my_list = [1, 2, 3, 1, 2, 4, 5, 4 ,6, 2]print("List Before ", my_list)temp_list = []for i in my_list:if i not in temp_list:temp_list.append(i)my_list = temp_listprint("List After removing duplicates ", my_list)
Ausgabe:
List Before [1, 2, 3, 1, 2, 4, 5, 4, 6, 2]List After removing duplicates [1, 2, 3, 4, 5, 6]
Entfernen Sie Duplikate mit Dict aus der Liste
Wir können Duplikate aus der angegebenen Liste entfernen, indem wir OrderedDict aus Sammlungen importieren. Es ist ab Python2.7 verfügbar. OrderedDict sorgt dafür, dass Sie die einzelnen Elemente in einer Reihenfolge zurückgeben, in der der Schlüssel vorhanden ist.
Lassen Sie uns eine Liste verwenden und die in OrderedDict verfügbare Methode fromkeys () verwenden, um die eindeutigen Elemente aus der Liste abzurufen.
Um die OrderedDict.fromkey () -Methode verwenden zu können, müssen Sie OrderedDict wie folgt aus Sammlungen importieren:
from collections import OrderedDict
Hier ist ein Beispiel zum Entfernen von Duplikaten mit der OrderedDict.fromkeys () -Methode.
from collections import OrderedDictmy_list = ['a','x','a','y','a','b','b','c']my_final_list = OrderedDict.fromkeys(my_list)print(list(my_final_list))
Ausgabe:
['a', 'x', 'y', 'b', 'c']
Ab Python 3.5+ können wir die regulären dict.fromkeys () verwenden, um die verschiedenen Elemente aus der Liste abzurufen. Die dict.fromkeys () -Methoden geben eindeutige Schlüssel zurück und helfen dabei, die doppelten Werte zu entfernen.
Ein Beispiel, das die Arbeitsweise von dict.fromkeys () in einer Liste zeigt, um die eindeutigen Elemente anzugeben, lautet wie folgt:
my_list = ['a','x','a','y','a','b','b','c']my_final_list = dict.fromkeys(my_list)print(list(my_final_list))
Ausgabe:
['a', 'x', 'y', 'b', 'c']
Entfernen Sie Duplikate mit der for-Schleife aus einer Liste
Mit der for-Schleife durchlaufen wir die Liste der Elemente, um Duplikate zu entfernen.
Initialisieren Sie zuerst das Array, um es zu leeren, dh myFinallist = []. Fügen Sie innerhalb der for-Schleife hinzu, ob die Elemente in der Liste im Array myFinallist vorhanden sind. Wenn die Elemente nicht vorhanden sind, fügen Sie das Element mit dem Anhang () dem Array myFinallist hinzu. Methode.
Wenn also das doppelte Element gefunden wird, ist es bereits im Array myFinallist vorhanden und wird nicht eingefügt. Lassen Sie uns nun dasselbe im folgenden Beispiel überprüfen:
my_list = [1,2,2,3,1,4,5,1,2,6]myFinallist = []for i in my_list:if i not in myFinallist:myFinallist.append(i)print(list(myFinallist))
Ausgabe:
[1, 2, 3, 4, 5, 6]
Entfernen Sie Duplikate mithilfe des Listenverständnisses aus der Liste
Listenverständnis sind Python-Funktionen, mit denen neue Sequenzen (wie Listen, Wörterbücher usw.) mit bereits erstellten Sequenzen erstellt werden. Dies hilft Ihnen, längere Schleifen zu reduzieren und das Lesen und Verwalten Ihres Codes zu vereinfachen.
Lassen Sie uns das Listenverständnis nutzen, um Duplikate aus der angegebenen Liste zu entfernen.
my_list = [1,2,2,3,1,4,5,1,2,6]my_finallist = [][my_finallist.append(n) for n in my_list if n not in my_finallist]print(my_finallist)
Ausgabe:
[1, 2, 3, 4, 5, 6]
Entfernen Sie Duplikate mit der Methode Numpy unique () aus der Liste.
Die Methode unique () aus dem Numpy-Modul kann uns helfen, Duplikate aus der angegebenen Liste zu entfernen.
Um mit Numpy First Import Numpy Module zu arbeiten, müssen Sie die folgenden Schritte ausführen:
Schritt 1 ) Numpy-Modul importieren
import numpy as np
Schritt 2) Verwenden Sie Ihre Liste mit Duplikaten innerhalb der eindeutigen Methode, wie unten gezeigt. Die Ausgabe wird mit der Methode tolist () wieder in ein Listenformat konvertiert.
myFinalList = np.unique(my_list).tolist()
Schritt 3) Drucken Sie abschließend die Liste wie folgt aus:
print(myFinalList)
Der endgültige Code mit Ausgabe lautet wie folgt:
import numpy as npmy_list = [1,2,2,3,1,4,5,1,2,6]myFinalList = np.unique(my_list).tolist()print(myFinalList)
Ausgabe:
[1, 2, 3, 4, 5, 6]
Entfernen Sie Duplikate mit Pandas-Methoden aus der Liste
Das Pandas-Modul verfügt über eine unique () -Methode, mit der wir die eindeutigen Elemente aus der angegebenen Liste erhalten.
Um mit dem Pandas-Modul zu arbeiten, müssen Sie die folgenden Schritte ausführen:
Schritt 1) Importieren Sie das Pandas-Modul
import pandas as pd
Schritt 2) Verwenden Sie Ihre Liste mit Duplikaten innerhalb der unique () -Methode wie unten gezeigt:
myFinalList = pd.unique(my_list).tolist()
Schritt 3) Drucken Sie die Liste wie folgt aus:
print(myFinalList)
Der endgültige Code mit Ausgabe lautet wie folgt:
import pandas as pdmy_list = [1,2,2,3,1,4,5,1,2,6]myFinalList = pd.unique(my_list).tolist()print(myFinalList)
Ausgabe:
[1, 2, 3, 4, 5, 6]
Entfernen Sie Duplikate mit enumerate () und Listenverständnis
Hier die Kombination aus Listenverständnis und Aufzählung, um die doppelten Elemente zu entfernen. Enumerate gibt ein Objekt mit einem Zähler für jedes Element in der Liste zurück. Zum Beispiel (0,1), (1,2) usw. Hier ist der erste Wert der Index und der zweite Wert das Listenelement. W.
Jedes Element wird überprüft, ob es in der Liste vorhanden ist, und wenn dies der Fall ist, wird es aus der Liste entfernt.
my_list = [1,2,2,3,1,4,5,1,2,6]my_finallist = [i for j, i in enumerate(my_list) if i not in my_list[:j]]print(list(my_finallist))
Ausgabe:
[1, 2, 3, 4, 5, 6]
Zusammenfassung
- Um die Duplikate aus einer Liste zu entfernen, können Sie den integrierten Funktionssatz () verwenden. Die Besonderheit der set () -Methode besteht darin, dass sie unterschiedliche Elemente zurückgibt.
- Sie können Duplikate aus der angegebenen Liste entfernen, indem Sie OrderedDict aus Sammlungen importieren. Es ist ab Python2.7 verfügbar. OrderedDictdict sorgt dafür, dass Sie die einzelnen Elemente in einer Reihenfolge zurückgeben, in der der Schlüssel vorhanden ist.
- Sie können eine for-Schleife verwenden, mit der wir die Liste der Elemente durchlaufen, um Duplikate zu entfernen.
- Die Methode unique () aus dem Numpy-Modul kann uns helfen, Duplikate aus der angegebenen Liste zu entfernen.
- Das Pandas-Modul verfügt über eine unique () -Methode, mit der wir die eindeutigen Elemente aus der angegebenen Liste erhalten.
- Die Kombination aus Listenverständnis und Aufzählung wird verwendet, um die doppelten Elemente aus der Liste zu entfernen. Enumerate gibt ein Objekt mit einem Zähler für jedes Element in der Liste zurück.