Rimuovi i duplicati da un elenco di Python

Rimuovi i duplicati da un elenco di Python
La struttura dei dati dell'elenco è abbastanza popolare tra i programmatori e gli utenti Python. A volte, gli utenti incontrano valori duplicati nell'elenco e si trovano incapaci di rimuoverli. In tal caso, questa guida è pensata per te. All'interno di questa guida, discuteremo di diversi metodi per rimuovere i valori duplicati da una struttura dei dati dell'elenco. Diamo un aspetto fresco.

Metodo 01: ingenuo

Inizia aprendo la shell del terminale con "Ctrl+Alt+T". Crea un nuovo file Python con l'istruzione "Tocca". Il file “Dup.PY "sarà aperto usando il comando editor" GNU Nano ":

$ touch dup.Py
$ Nano dup.Py

Dopo aver aperto il file in nano editor, aggiungi il supporto Python all'inizio. L'elenco dei tipi interi è stato inizializzato, con alcuni dei suoi valori che si ripetono. L'istruzione di stampa ha visualizzato l'elenco convertendo il suo valore in un tipo di stringa. Un altro elenco vuoto, "arr", è stato inizializzato. Il ciclo "for" verrà utilizzato per inserire semplicemente il primo verificarsi di un valore di elenco e aggiungerlo al nuovo elenco "arr" utilizzando la funzione "Append". L'elenco appena fatto verrà stampato:

#! /usr/bin/pithon3
Elenco = [1, 4, 6, 7, 10, 2, 1, 4, 3]
Arr = []
Per me in elenco
Se non lo faccio in arr:
Arr.aggiungere()
Stampa ("L'elenco dopo l'aggiornamento:" + STR (arr))

Dopo aver eseguito il file Python, il terminale è stato visualizzato dall'elenco originale e quello nuovo senza duplicati:

$ python3 dup.Py

Metodo 02: Comprensione dell'elenco

Il metodo di comprensione dell'elenco è abbastanza simile al metodo ingenuo. L'unica modifica è la posizione di utilizzo del metodo di append, "per" e "if". Apri lo stesso file “Dup.py "per aggiornare il suo codice. Il metodo di comprensione dell'elenco è mostrato come la miscela di loop "per" e l'istruzione "if" con la funzione append (). Il resto del codice è lo stesso:

#! /usr/bin/pithon3
Elenco = [1, 4, 6, 7, 10, 2, 1, 4, 3]
Stampa ("L'elenco prima dell'aggiornamento:" + STR (elenco))
Arr = []
[Arr.append () per i nell'elenco se non sono in arr]:
Stampa ("L'elenco dopo l'aggiornamento:" + STR (arr))

Dopo aver eseguito il file Python, abbiamo il risultato previsto, i.e., l'elenco originale e aggiornato il nuovo elenco:

$ python3 dup.Py

Metodo 03: enumera con la comprensione dell'elenco

È possibile utilizzare la funzione enumerata all'interno della comprensione dell'elenco per evitare i duplicati nell'elenco. Basta aprire il file “Dup.py "e aggiungi il metodo enumerate all'interno della linea di comprensione dell'elenco tra il loop" per ". Sia il vecchio elenco che l'elenco aggiornato senza duplicati verranno visualizzati sulla shell con l'uso dell'istruzione "stampa" nel codice:

#! /usr/bin/pithon3
List = ["l", "i", "n", "u", "x", "l", "n"]
Stampa ("L'elenco prima dell'aggiornamento:" + STR (elenco))
Arr = [i per n, i in enumerate (elenco) se non sono nell'elenco [: n]]
Stampa ("L'elenco dopo l'aggiornamento:" + STR (arr))

Il file è stato eseguito e il risultato ha prima visualizzato l'elenco originale, quindi il nuovo elenco aggiornato che non ha valori duplicati. La funzione enumerate ha anche ordinato l'elenco:

$ python3 dup.Py

Esempio 04: set () funzione

La funzione set () è abbastanza nota per rimuovere i duplicati dall'elenco. Rimuove i duplicati ma cambia l'ordine di un elenco da solo. Quindi, apri il file dup.Py e aggiungi l'inizializzazione dell'elenco. L'elenco originale è stato stampato. Quindi, abbiamo utilizzato il metodo "Set ()" in "Elenco" per rimuovere i duplicati e convertire di nuovo quelli rimanenti in un elenco. L'elenco risultante è stato aggiornato e visualizzato di nuovo sulla shell:

#! /usr/bin/pithon3
List = ["l", "i", "n", "u", "x", "l", "n"]
Stampa ("L'elenco prima dell'aggiornamento:" + STR (elenco))
Elenco = elenco (set (elenco))
Stampa ("L'elenco dopo l'aggiornamento:" + STR (elenco))

All'esecuzione del file Python, l'elenco originale e quindi, è stato visualizzato quello aggiornato.

$ python3 dup.Py

Metodo 05: Collezioni.OrdinedDict

Le raccolte del modulo possono anche essere utilizzate per questo scopo. Importa semplicemente il pacchetto OrderEdDict dalla libreria "Collezioni". Inizializza l'elenco e stampalo. Una nuova variabile, "arr", viene utilizzata per ottenere l'elenco generato dal "ordinato.DICT.Metodo fromKeys () "e bypassing l'elenco originale in esso. Verrà visualizzata la variabile di elenco appena creata:

#! /usr/bin/pithon3
Dalle raccolte di importazione ordinata
List = ["l", "i", "n", "u", "x", "l", "n"]
Stampa ("L'elenco prima dell'aggiornamento:" + STR (elenco))
Arr = elenco (OrderEdDict.dakeyys (elenco))
Stampa ("L'elenco dopo l'aggiornamento:" + STR (arr))

L'esecuzione mostra il risultato previsto. Il primo elenco è quello originale e il secondo è l'elenco aggiornato senza duplicati:

$ python3 dup.Py

Conclusione:

Questo articolo ha presentato diversi metodi per rimuovere i duplicati dall'elenco, i.e., Elenco comprensione, set () funzioni, enumerate, collezioni.Importazione del pacchetto OrderEdDict. Speriamo che questa guida ti aiuti al meglio e per favore controlla il suggerimento di Linux per altri articoli informativi.