Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Industrial programming >> Python

Duplikate aus Python-Listen entfernen: 8 bewährte Methoden

Eine Liste ist eine fundamentale Python-Datenstruktur, die eine geordnete Sammlung von Items wie Integers, Strings oder Custom Objects hält. Sie ist das Python-Äquivalent eines Arrays in anderen Sprachen.

Nachfolgend finden Sie bewährte Techniken, um Duplikate aus einer Liste zu entfernen, während Reihenfolge und Lesbarkeit gewahrt bleiben.

Duplikate mit einem Set entfernen

Pythons eingebaute set()-Funktion eliminiert Duplikate, indem sie nur einzigartige Elemente zurückgibt. Konvertieren Sie die Liste in ein Set und zurück in eine Liste, um das Sammlungsformat zu bewahren.

my_list = [1,1,2,3,2,2,4,5,6,2,1]
my_final_list = set(my_list)
print(list(my_final_list))

Output:

[1, 2, 3, 4, 5, 6]

Duplikate mit temporärer Liste entfernen

Dieser Ansatz erstellt eine leere Liste, iteriert über die Original-Liste und fügt nur Items hinzu, die noch nicht gesehen wurden.

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_list
print("List After removing duplicates ", my_list)

Output:

List Before [1, 2, 3, 1, 2, 4, 5, 4, 6, 2]
List After removing duplicates [1, 2, 3, 4, 5, 6]

Duplikate mit OrderedDict (oder dict.fromkeys) entfernen

Ab Python 3.5+ bewahrt ein einfaches dict die Einfügereihenfolge, sodass dict.fromkeys() genutzt werden kann, um einzigartige Werte in Reihenfolge zu behalten.

my_list = ['a','x','a','y','a','b','b','c']
my_final_list = dict.fromkeys(my_list)
print(list(my_final_list))

Output:

['a', 'x', 'y', 'b', 'c']

Duplikate mit einfachem for-Loop entfernen

Durchlaufen Sie die Liste und fügen Sie Items nur einer neuen Liste hinzu, wenn sie noch nicht vorgekommen sind.

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(myFinallist)

Output:

[1, 2, 3, 4, 5, 6]

Duplikate via List Comprehension entfernen

List Comprehensions bieten prägnante Syntax bei Erhalt der Lesbarkeit.

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)

Output:

[1, 2, 3, 4, 5, 6]

Duplikate mit NumPy's unique() entfernen

NumPys unique()-Funktion gibt die sortierten einzigartigen Elemente eines Arrays zurück.

import numpy as np
my_list = [1,2,2,3,1,4,5,1,2,6]
myFinalList = np.unique(my_list).tolist()
print(myFinalList)

Output:

[1, 2, 3, 4, 5, 6]

Duplikate mit Pandas' unique() entfernen

Ähnlich bietet Pandas eine leichte unique()-Methode, die auf listen-ähnlichen Objekten funktioniert.

import pandas as pd
my_list = [1,2,2,3,1,4,5,1,2,6]
myFinalList = pd.unique(my_list).tolist()
print(myFinalList)

Output:

[1, 2, 3, 4, 5, 6]

Duplikate mit enumerate() und List Comprehension entfernen

Die Kombination von enumerate() mit einer List Comprehension erlaubt das Entfernen von Duplikaten bei Erhalt des ersten Vorkommens jedes Elements.

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(my_finallist)

Output:

[1, 2, 3, 4, 5, 6]

Zusammenfassung

Python

  1. Python-Datentypen meistern: Praxisleitfaden
  2. Python-Operatoren meistern: Umfassender Leitfaden
  3. Python pass-Statement meistern: Praxisleitfaden
  4. Python-Funktionsargumente meistern: Positional, Keyword & Default-Parameter
  5. Pythons range()-Funktion meistern: Von Grundlagen bis zu fortgeschrittenen Anwendungsfällen
  6. Python Lists meistern: Append, Sort, Length & List Comprehensions (Praxis-Guide)
  7. Durchschnitt berechnen in Python: Praktischer Leitfaden
  8. Python list.count(): Experten-Guide mit praktischen Beispielen
  9. Elemente aus Python-Listen entfernen: remove(), pop(), clear() und del
  10. Python list.index(): Element-Positionen finden mit praktischen Beispielen