Structures de données avancées en Python : Dictionnaires et Ensembles

dictionnaires Python, ensembles Python

Python est reconnu pour sa simplicité et sa puissance, notamment grâce à ses structures de données avancées. Dans cet article, nous allons explorer deux de ces structures essentielles : les dictionnaires et les ensembles.

Les dictionnaires en Python : Une clé pour l’efficacité

Qu’est-ce qu’un dictionnaire ?

Un dictionnaire en Python est une structure de données qui stocke des paires clévaleur. Contrairement aux listes qui utilisent des indices numériques, les dictionnaires permettent d’accéder aux valeurs via des clés uniques.

Création et manipulation de dictionnaires

Voici comment créer et utiliser un dictionnaire :

# Création d'un dictionnaire
fruits = {"pomme": 2, "banane": 3, "orange": 1}

# Accès à une valeur
print(fruits["pomme"])  # Affiche : 2

# Ajout d'un nouvel élément
fruits["kiwi"] = 4

# Modification d'une valeur
fruits["banane"] = 5

# Suppression d'un élément
del fruits["orange"]

Méthodes utiles pour les dictionnaires

Python offre plusieurs méthodes pratiques pour travailler avec les dictionnaires :

  • keys() : Retourne toutes les clés du dictionnaire
  • values() : Retourne toutes les valeurs
  • items() : Retourne les paires clé-valeur

Exemple :

for fruit, quantite in fruits.items():
    print(f"Nous avons {quantite} {fruit}(s)")

Les ensembles en Python : Éliminer les doublons efficacement

Définition et caractéristiques d’un ensemble

Un ensemble (set) est une collection non ordonnée d’éléments uniques. Il est particulièrement utile pour éliminer les doublons et effectuer des opérations mathématiques sur les ensembles.

Création et manipulation d’ensembles

Voici comment créer et utiliser un ensemble :

# Création d'un ensemble
couleurs = {"rouge", "bleu", "vert"}

# Ajout d'un élément
couleurs.add("jaune")

# Tentative d'ajout d'un doublon (ignoré)
couleurs.add("rouge")

# Suppression d'un élément
couleurs.remove("vert")

Opérations sur les ensembles

Les ensembles permettent d’effectuer des opérations mathématiques comme l’union, l’intersection et la différence :

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

# Union
print(set1 | set2)  # {1, 2, 3, 4, 5, 6}

# Intersection
print(set1 & set2)  # {3, 4}

# Différence
print(set1 - set2)  # {1, 2}

Comparaison entre dictionnaires et ensembles

CaractéristiqueDictionnaireEnsemble
OrdreNon ordonnéNon ordonné
Éléments uniquesClés uniquesTous uniques
MutableOuiOui
IndexationPar cléNon indexé

Cas d’utilisation pratiques

Dictionnaires

  1. Stockage de données structurées (ex : informations utilisateur)
  2. Comptage d’occurrences (ex : fréquence des mots dans un texte)
  3. Mise en cache de résultats de fonctions

Ensembles

  1. Élimination de doublons dans une liste
  2. Vérification rapide d’appartenance
  3. Opérations mathématiques sur des collections

Pour aller plus loin

  • Explorez les collections spécialisées comme defaultdict et Counter du module collections.
  • Apprenez à utiliser les compréhensions de dictionnaires et d’ensembles pour une création plus concise.
  • Étudiez les performances de ces structures par rapport aux listes pour des opérations spécifiques.

Lire aussi :
Gestion des exceptions en Python : Meilleures pratiques
Programmation orientée objet en Python : Concepts clés et exemples