Exemples de comment obtenir les valeurs uniques d'une liste en python:
Créer une liste en python
Créons d'abord une liste avec des valeurs uniques :
mylist1 = ['a', 'b', 'c', 'd']
puis créez une autre liste plus grande en utilisant ces valeurs uniques :
import randommylist2 = [random.choice(mylist1) for i in range(20)]mylist2
donne par exemple
['d','c','d','d','b','d','a','b','b','d','a','b','a','b','a','d','b','d','a','b']
Objectif : obtenir des valeurs uniques de mylist2.
Obtenir les valeurs uniques d'une liste
Il existe plusieurs solutions pour cela.
Convertir la liste en set
Une solution simple consiste à convertir la liste en set (voir python Data Structures):
mylist2 = set(mylist2)
et de reconvertir en liste
mylist2 = list(mylist2)print(mylist2)
donne
['d', 'a', 'b', 'c']
Note: pour trier la liste :
mylist2.sort()print(mylist2)
donne alors
['a', 'b', 'c', 'd']
Convertir la liste en matrice
Une autre solution consiste à convertir la liste en matrice
import numpy as npmylist2 = np.array(mylist2)
voir la fonction numpy unique()
mylist2 = np.unique(mylist2)
et convertir à nouveau en liste
mylist2 = list(mylist2)mylist2
donne
['a', 'b', 'c', 'd']
Itérer sur chaque valeur avec une boucle for
Une autre solution consiste simplement à itérer sur chaque valeur avec une boucle for
mylist3 = []for i in mylist2:if i not in mylist3:mylist3.append(i)mylist2 = mylist3mylist2.sort()print(mylist2)
donne
['a', 'b', 'c', 'd']
