Parfois, on a besoin de stoker des valeurs sous forme de collection sans pour autant vouloir les indexer. Autrement dit, ce qui nous intéresse, c'est le fait qu'une valeur soit présente dans cette collection peu importe sa position. Les ensembles remplissent bien cette tâche, et bien plus.
Structures de données sans doubles et sans ordre
Un ensemble (connu aussi sous le nom de set) est une structure de données qui renferme plusieurs valeurs comme les autres séquences et itérables que nous avons vu jusqu’ici, en l’occurrence, les listes et les tuples.
Les éléments qui constituent un ensemble sont uniques, c’est-à-dire qu’ils ne peuvent pas figurer plusieurs fois dans la structure. En plus, ils ne sont pas ordonnés, donc ne peuvent pas être accessibles par des indices comme c’est le cas pour les listes, les tuples ou les chaînes de caractères.
Vous vous demandez certainement à quoi pourraient servir les ensembles, puisqu’il est clair que les autres séquences sont plus efficaces pour gérer les données multiples, en l’occurrence les listes. En effet, les ensembles servent souvent à éliminer les doublons qui figurent dans une autre séquence. L’élimination des doublons pour ne conserver que les valeurs uniques est une tâche très sollicitée dans de nombreuses situations.
Pour créer un ensemble on peut procéder de deux façons différentes :
La première méthode consiste à utiliser les accolades ou on place les éléments voulus séparés par des virgules comme ceci :
s={10,20,30}
Notez que cette méthode ne permet pas de créer un ensemble vide. En effet, si on fait ceci s={}, on aura un dictionnaire et non pas un ensemble.
La deuxième méthode consiste à créer un ensemble à partir d’une autre structure.
Supposons que l’on a créé une liste du nom de lst. Pour créer un ensemble à partir de cette liste, on fait appel au mot-clé set comme ceci :