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

Python-Programm zum Entfernen doppelter Elemente aus einem Array

王林
王林nach vorne
2023-09-07 11:13:021751Durchsuche

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

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]

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)

Ausgabe

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

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) 

Ausgabe

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

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)

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) 

Ausgabe

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

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)

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) 

Ausgabe

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

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!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen