Sobes.tech
Junior

Parlez du type de données set.

sobes.tech IA

Réponse de l'IA

Le type de données set en Python représente une séquence non ordonnée d'éléments uniques.

Propriétés principales :

  • Non ordonné : Les éléments dans un ensemble n'ont pas d'ordre fixe.
  • Unique : Chaque valeur ne peut apparaître qu'une seule fois dans l'ensemble.
  • Mutable : Les ensembles peuvent ajouter et supprimer des éléments (sauf frozenset).
  • Les éléments doivent être hashables : Les types immuables (nombres, chaînes, tuples) sont supportés. Les types mutables (listes, dictionnaires) ne peuvent pas être utilisés.

Création :

# Créer un ensemble vide
empty_set = set()

# Créer un ensemble à partir d'une liste
ma_liste = [1, 2, 3, 2, 4]
ensemble_depuis_liste = set(ma_liste) # ensemble_depuis_liste sera {1, 2, 3, 4}

# Créer un ensemble avec des accolades
ensemble_direct = {5, 6, 7}

Opérations principales :

Opération Méthode Description
Ajouter un élément add(element) Ajoute element à l'ensemble.
Supprimer un élément remove(element) Supprime element. Lève une erreur si absent.
Supprimer un élément (sécurité) discard(element) Supprime element. Ne fait rien si absent.
Union union(), ` `
Intersection intersection(), & Retourne un nouvel ensemble avec les éléments communs.
Différence difference(), - Éléments du premier qui ne sont pas dans le second.
Différence symétrique symmetric_difference(), ^ Éléments présents dans l'un ou l'autre, mais pas les deux.
Vérification de présence in Booléen, indique si l'élément est dans l'ensemble.

Exemples d'utilisation :

set1 = {1, 2, 3, 4}
set2 = {3, 4, 5, 6}

# Union
de = set1.union(set2) # de = {1, 2, 3, 4, 5, 6}

# Intersection
hf = set1 & set2 # hf = {3, 4}

# Différence
df = set1 - set2 # df = {1, 2}

# Vérification de présence
present = 3 in set1 # present = True

Applications en QA :

  • Recherche de doublons dans des listes de données.
  • Comparaison de deux ensembles de résultats (par exemple, attendus et réels).
  • Filtrage des éléments uniques d'une séquence.
  • Vérification de la présence d'un élément dans une grande collection de données (recherche rapide).

frozenset : Version immuable de l'ensemble. Utilisée lorsque l'on a besoin d'un ensemble immuable (par exemple, comme clé dans un dictionnaire).