Ensembles (set)

Utiliser les ensembles (set) avec Python

Un ensemble est une collection non ordonnée et non indexée. En Python, les ensembles sont écrits avec des crochets bouclés.

Créer un ensemble :

monEnsemble = {"Porsche", "Ford", "Renault"}
print(monEnsemble)

 

Note : Les ensembles ne sont pas ordonnés, donc les éléments apparaîtront dans un ordre aléatoire.

Éléments d'accès

Vous ne pouvez pas accéder aux valeurs d'un set en vous référant à un index, car les ensembles sont désordonnés et les valeurs n'ont pas d'index.

Mais vous pouvez faire une boucle à travers les éléments de l'ensemble en utilisant un for loop, ou demander si une valeur spécifiée est présente dans un ensemble, en utilisant le mot-clé in.

Faites une boucle dans l'ensemble et imprimez les valeurs :

monEnsemble = {"Porsche", "Ford", "Renault"}

for x in monEnsemble:
    print(x)

Vérifier si "Ford" est présent dans le set :

monEnsemble = {"Porsche", "Ford", "Renault"}

print("Ford" in monEnsemble)

 

Éléments de modification

Une fois qu'un set est créé, vous ne pouvez pas modifier ses éléments, mais vous pouvez en ajouter de nouveaux.

Ajouter des éléments

Pour ajouter un élément à un ensemble, utilisez la méthode add().

Pour ajouter plus d'un élément à un ensemble, utilisez la méthode update().

Ajouter un élément à un ensemble, en utilisant la méthode python add() :

monEnsemble = {"Porsche", "Ford", "Renault"}

monEnsemble.add("Fiat")

print(monEnsemble)

Ajoutez plusieurs éléments à un ensemble, en utilisant la méthode update() : 

monEnsemble = {"Porsche", "Ford", "Renault"} 
monEnsemble.update(["Fiat", "Honda", "Mazda"]) print(monEnsemble)

Obtenir la longueur d'un ensemble en Python

Pour déterminer le nombre d'éléments d'un ensemble, utilisez la méthode len().

Obtenir le nombre d'articles dans un ensemble :

monEnsemble = {"Porsche", "Ford", "Renault"}

print(len(monEnsemble))

 

Supprimer un élément

Pour supprimer un élément d'un ensemble, utilisez la méthode remove(), ou la méthode discard().

Supprimez "Ford" en utilisant la méthode remove() :

monEnsemble = {"Porsche", "Ford", "Renault"}

monEnsemble.remove("Ford")

print(monEnsemble)

 

Note : Si l'élément à supprimer n'existe pas, remove() provoquera une erreur.

Enlevez "Ford" en utilisant la méthode discard() :

monEnsemble = {"Porsche", "Ford", "Renault"}

monEnsemble.discard("Ford")

print(monEnsemble)

 

Remarque : Si l'élément à supprimer n'existe pas, la fonction Rejeter() ne provoquera PAS d'erreur.

Vous pouvez aussi utiliser la méthode pop(), pour supprimer un élément, mais cette méthode supprimera le dernier élément. Rappelez-vous que les ensembles ne sont pas ordonnés, vous ne saurez donc pas quel élément est retiré.

La valeur de retour de la méthode pop() est l'élément supprimé.

Supprimez le dernier élément en utilisant la méthode pop() :

monEnsemble = {"Porsche", "Ford", "Renault"}

x = monEnsemble.pop()

print(x)

print(monEnsemble)

 

Note : Les ensembles ne sont pas ordonnés, donc lorsque vous utilisez la méthode pop(), vous ne saurez pas quel élément sera supprimé.

La méthode clear() vide l'ensemble :

monEnsemble = {"Porsche", "Ford", "Renault"}

monEnsemble.clear()

print(monEnsemble)

 

Le mot-clé del supprimera complètement l'ensemble :

monEnsemble = {"Porsche", "Ford", "Renault"}

del monEnsemble

print(monEnsemble)

 

Méthodes des ensembles en Python

Method Description
add() Ajoute un élément à l'ensemble
clear() Supprime tous les éléments de l'ensemble
copy() Renvoie une copie de l'ensemble
difference() Renvoie un ensemble contenant la différence entre deux ou plusieurs ensembles.
difference_update() Supprime les éléments de cet ensemble qui sont également inclus dans un autre ensemble spécifié.
discard() Supprimer l'élément spécifié
intersection() Renvoie un set, c'est-à-dire l'intersection de deux autres ensembles
intersection_update() Supprime les éléments de cet ensemble qui ne sont pas présents dans d'autres ensembles spécifiés.
isdisjoint() Retourne si deux ensembles ont une intersection ou non
issubset() Renvoie si un autre set contient ce set ou non
issuperset() Renvoie si cet ensemble contient un autre ensemble ou non
pop() Supprime un élément de l'ensemble
remove() Supprime l'élément spécifié
symmetric_difference() Renvoie un ensemble avec les différences symétriques de deux ensembles
symmetric_difference_update() Insère les différences symétriques de cet ensemble et d'un autre ensemble.
union() Retourne un ensemble contenant l'union des ensembles
update() Mise à jour de l'ensemble avec l'union de cet ensemble et d'autres ensembles
Article précédent
Dictionnaires en Python
 

A propos de l'auteur

Guillaume Cochet

Guillaume Cochet est consultant SEO à l'agence de Référencement Aseox à Lille.