Heim > Backend-Entwicklung > Python-Tutorial > Python-Programm zum Entfernen doppelter Elemente aus einem Array

Python-Programm zum Entfernen doppelter Elemente aus einem Array

王林
Freigeben: 2023-09-07 11:13:02
nach vorne
1827 Leute haben es durchsucht

Python-Programm zum Entfernen doppelter Elemente aus einem Array

Ein Array ist eine Sammlung von Elementen desselben Datentyps. Jedes Element im Array wird durch einen Indexwert identifiziert. Es handelt sich um eine der einfachsten Datenstrukturen, bei der auf jedes Datenelement nur über seine Indexnummer direkt zugegriffen werden kann.

Arrays in Python

Python hat keine spezifische Datenstruktur zur Darstellung von Arrays. Hier können wir ein Array auflisten.

 [6, 4, 1, 5, 9]
  0  1  2  3  4
Nach dem Login kopieren

Indizes in Python beginnen bei 0. Im obigen Codeblock sind die Ganzzahlen 6,4,1,5,9 Array-Elemente und 0,1,2,3,4 ihre jeweiligen Indexwerte.

Arrays können doppelte Elemente enthalten. In diesem Artikel besprechen wir verschiedene Möglichkeiten, doppelte Elemente aus einem Array zu entfernen.

Eingabe- und Ausgabeszenarien

Angenommen, wir haben ein Eingabearray mit doppelten Werten. Und das resultierende Array enthält nur eindeutige Elemente.

Input array:
A = [1, 5, 3, 6, 3, 5, 6, 1]
Output array:
[1, 5, 3, 6]
Nach dem Login kopieren

Elemente 1, 5, 3, 6 sind die einzigen Elemente im angegebenen Array.

For-Schleife verwenden

Wir werden die for-Schleife verwenden, um alle Array-Elemente zu durchlaufen, und in jeder Iteration werden wir Duplikate finden, indem wir den Operator „not in“ verwenden.

Beispiel

In diesem Beispiel initialisieren wir zunächst ein leeres Listenergebnis, um alle in der for-Schleife gefundenen eindeutigen Werte zu speichern.

lst = [1, 5, 3, 6, 3, 5, 6,  1] 
print ("The original array is: ",lst) 

# Remove repeated elements from array 
result = []

for i in lst: 
   if i not in result: 
      result.append(i) 

print ("The array after removing repeated elements: ", result)
Nach dem Login kopieren

Ausgabe

The original array is:  [1, 5, 3, 6, 3, 5, 6, 1]
The array after removing repeated elements:  [1, 5, 3, 6]
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

Der „nicht in“-Operator prüft, ob das aktuelle Element in der leeren Liste vorhanden ist. Wenn es nicht existiert, wird das Element an die Ergebnisliste angehängt, andernfalls wird es ignoriert.

Sammlungen verwenden

Set ist eine Datenstruktur in Python, die eindeutige Daten speichert. Dies bedeutet, dass die Speicherung doppelter Elemente nicht möglich ist.

Beispiel

In diesem Beispiel konvertieren wir das Array einfach vom Listendatentyp in den Sammlungsdatentyp.

lst = [1, 5, 3, 6, 3, 5, 6,  1] 
print ("The original array is: ",lst) 

# Remove repeated elements from array 
result = list(set(lst)) 

print ("The array after removing repeated elements: ", result) 
Nach dem Login kopieren

Ausgabe

The original array is:  [1, 5, 3, 6, 3, 5, 6, 1]
The array after removing repeated elements:  [1, 3, 5, 6]
Nach dem Login kopieren

Da wir alle wissen, dass Duplikate nicht in einer Sammlungsdatenstruktur untergebracht werden können, erhalten wir das Ausgabearray, das alle eindeutigen Elemente enthält.

Verwenden Sie die Funktion Enumerate()

Enumerate() ist eine in Python integrierte Funktion, die ein iterierbares Objekt akzeptiert und ein Tupel zurückgibt, das die Anzahl und die Werte enthält, die durch die Iteration des iterierbaren Objekts erhalten werden.

Grammatik

enumerate(iterable, start=0)
Nach dem Login kopieren

Beispiel

Wir werden die Funktion enumerate() im Listenverständnis implementieren, um den Index jedes Elements im Array zu verfolgen, und dann können wir den Indexwert i verwenden, um zu überprüfen, ob Element n bereits im Array bis zum Index i vorhanden ist . Wenn es existiert, ignorieren wir das Element, andernfalls fügen wir es dem resultierenden Array hinzu.

lst = [1, 5, 3, 6, 3, 5, 6,  1] 
print ("The original array is: ",lst) 

# Remove repeated elements from array 
result = [i for i, n in enumerate(lst) if n not in lst[:i]]

print ("The array after removing repeated elements: ", result) 
Nach dem Login kopieren

Ausgabe

The original array is:  [1, 5, 3, 6, 3, 5, 6, 1]
The array after removing repeated elements:  [1, 5, 3, 6]
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

Verwenden Sie Dict.fromkeys()

Die

Python-Methode dict.fromkeys() wird verwendet, um ein Wörterbuch aus einem bestimmten Satz von Schlüsseln und Werten zu erstellen. Wörterbücher speichern einen eindeutigen Schlüsselsatz.

Grammatik

dict.fromkeys(keys, values)
Nach dem Login kopieren

Parameter

  • Keys – Dies ist ein erforderlicher Parameter. Es ist eine Iteration erforderlich, um die Schlüssel des neuen Wörterbuchs anzugeben.

  • Werte – Es handelt sich um einen optionalen Parameter, die Werte aller Schlüssel. Der Standardwert ist „Keine“.

Beispiel

In diesem Beispiel erstellen wir ein Wörterbuch, das nur Schlüssel und keine Schlüssel-Wert-Paare enthält.

lst = [1, 5, 3, 6, 3, 5, 6,  1] 
print ("The original array is: ",lst) 

# Remove repeated elements from array
 
result = list(dict.fromkeys(lst))

print ("The array after removing repeated elements: ", result) 
Nach dem Login kopieren

Ausgabe

The original array is:  [1, 5, 3, 6, 3, 5, 6, 1]
The array after removing repeated elements:  [1, 5, 3, 6]
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

Wie wir alle wissen, können Schlüssel in einem Wörterbuch nicht wiederholt werden. Daher entfernt die Methode fromkeys() selbstständig doppelte Werte. Dann konvertieren wir es in eine Liste, um ein Array zu erhalten, das alle eindeutigen Elemente enthält.

Dies sind einige der Methoden, mit denen wir doppelte Elemente aus einem Array entfernen können.

Das obige ist der detaillierte Inhalt vonPython-Programm zum Entfernen doppelter Elemente aus einem Array. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:tutorialspoint.com
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage