Come rimuovere elementi duplicati da una lista in Python

Impara come rimuovere elementi duplicati da una lista in Python.

Esempio

Eliminiamo qualsiasi elemento duplicato dalla lista:

mylist = ["a", "b", "a", "c", "c"]
mylist = list(dict.fromkeys(mylist))
print(mylist)

Eseguire l'istanza

Esempio di spiegazione

Prima di tutto, abbiamo una lista che contiene elementi duplicati:

Lista con elementi duplicati

mylist = ["a", "b", "a", "c", "c"]
mylist = list(dict.fromkeys(mylist))
print(mylist)

Creiamo un dizionario utilizzando gli elementi della lista come chiavi. Questo eliminerà automaticamente qualsiasi elemento duplicato, poiché i dizionari non possono avere chiavi duplicate.

Creare dizionario

mylist = ["a", "b", "a", "c", "c"]
mylist = list( dict.fromkeys(mylist) )
print(mylist)

Poi, convertiamo il dizionario in elenco:

Convertita in lista

mylist = ["a", "b", "a", "c", "c"]
mylist = list(dict.fromkeys(mylist)) 
print(mylist)

Ora abbiamo una lista senza duplicati, che ha la stessa sequenza della lista originale.

Stampare la lista per dimostrare i risultati:

Stampare Lista

mylist = ["a", "b", "a", "c", "c"]
mylist = list(dict.fromkeys(mylist))
print(mylist)

Creare funzione

Se si desidera avere una funzione che può inviare una lista e che restituisce elementi senza duplicati, è possibile creare una funzione e inserire il codice dell'esempio sopra.

Esempio

def my_function(x):
  return list(dict.fromkeys(x))
mylist = my_function(["a", "b", "a", "c", "c"])
print(mylist)

Eseguire l'istanza

Spiegazione degli esempi

Creare una funzione con una lista come parametro.

Creare funzione

def my_function(x): 
  return list(dict.fromkeys(x))
mylist = my_function(["a", "b", "a", "c", "c"])
print(mylist)

Creare un dizionario utilizzando questo elemento della lista come chiave.

Creare dizionario

def my_function(x):
  return list( dict.fromkeys(x) )
mylist = my_function(["a", "b", "a", "c", "c"])
print(mylist)

Convertire un dizionario in lista:

Convertire in lista

def my_function(x):
  return list( dict.fromkeys(x) ) 
mylist = my_function(["a", "b", "a", "c", "c"])
print(mylist)

Restituire la lista:

Restituire la lista

def my_function(x):
  return list(dict.fromkeys(x))
mylist = my_function(["a", "b", "a", "c", "c"])
print(mylist)

Chiamare la funzione utilizzando una lista come parametro:

Chiamare la funzione

def my_function(x):
  return list(dict.fromkeys(x))
mylist = my_function(["a", "b", "a", "c", "c"])
print(mylist)

Stampare il risultato:

Stampare il risultato

def my_function(x):
  return list(dict.fromkeys(x))
mylist = my_function(["a", "b", "a", "c", "c"])
print(mylist)