8. Structures de données en Python
Découvrez les structures de données essentielles en Python : listes, tuples, dictionnaires et ensembles.
PYTHON pour les DÉBUTANTS #8#
Les structures de données en Python#
Explication
Les structures de données sont des moyens d’organiser et de stocker des informations dans votre programme Python. Elles permettent de gérer efficacement vos données et de les manipuler selon vos besoins.
Les listes (Lists)#
Définition
Les listes sont des collections ordonnées et modifiables d’éléments. Elles peuvent contenir des valeurs de n’importe quel type et permettent des doublons.
Création d’une liste#
# Liste videma_liste = []
# Liste avec des élémentsfruits = ["pomme", "banane", "orange"]nombres = [1, 2, 3, 4, 5]Accès aux éléments#
fruits = ["pomme", "banane", "orange"]
# Premier élément (index 0)print(fruits[0]) # "pomme"
# Dernier élémentprint(fruits[-1]) # "orange"
# Slicingprint(fruits[1:3]) # ["banane", "orange"]Important
En Python, les indices commencent à 0, pas à 1. Le premier élément d’une liste est donc liste[0]. Les indices négatifs permettent d’accéder aux éléments depuis la fin : -1 pour le dernier élément, -2 pour l’avant-dernier, etc.
Modification des listes#
fruits = ["pomme", "banane"]
# Ajouter un élémentfruits.append("orange")print(fruits) # ["pomme", "banane", "orange"]
# Insérer un élémentfruits.insert(1, "kiwi")print(fruits) # ["pomme", "kiwi", "banane", "orange"]
# Supprimer un élémentfruits.remove("banane")print(fruits) # ["pomme", "kiwi", "orange"]Les tuples (Tuples)#
Définition
Les tuples sont des collections ordonnées et non modifiables d’éléments. Une fois créés, leur contenu ne peut pas être changé.
Création d’un tuple#
# Tuple videmon_tuple = ()
# Tuple avec des élémentscoordonnees = (10, 20)couleurs = ("rouge", "vert", "bleu")Utilisation des tuples#
coordonnees = (10, 20)x, y = coordonnees # Déballage du tuple
print(f"X: {x}, Y: {y}") # X: 10, Y: 20Conseil
Utilisez les tuples quand vous avez besoin de données qui ne doivent jamais changer (coordonnées, configurations, constantes). Leur immutabilité les rend plus sûrs et plus performants que les listes dans certains cas.
Les dictionnaires (Dictionaries)#
Définition
Les dictionnaires stockent des paires clé-valeur et permettent un accès rapide aux données. Chaque clé doit être unique dans le dictionnaire.
Création d’un dictionnaire#
# Dictionnaire videmon_dict = {}
# Dictionnaire avec des élémentspersonne = { "nom": "Alice", "age": 25, "ville": "Paris"}Accès aux valeurs#
personne = {"nom": "Alice", "age": 25}
# Accès par cléprint(personne["nom"]) # "Alice"print(personne.get("age")) # 25
# Vérifier si une clé existeif "ville" in personne: print(personne["ville"])Attention
Utiliser dictionnaire[cle] lèvera une erreur si la clé n’existe pas. Préférez dictionnaire.get(cle) qui retourne None par défaut si la clé est absente, ou dictionnaire.get(cle, valeur_par_defaut) pour spécifier une valeur par défaut.
Modification des dictionnaires#
personne = {"nom": "Alice", "age": 25}
# Ajouter une nouvelle clé-valeurpersonne["ville"] = "Paris"
# Modifier une valeur existantepersonne["age"] = 26
# Supprimer une clédel personne["ville"]Les ensembles (Sets)#
Définition
Les ensembles sont des collections non ordonnées d’éléments uniques. Ils sont particulièrement utiles pour éliminer les doublons et effectuer des opérations mathématiques ensemblistes.
Création d’un ensemble#
# Ensemble videmon_ensemble = set()
# Ensemble avec des élémentscouleurs = {"rouge", "vert", "bleu"}nombres = {1, 2, 3, 4, 5}Opérations sur les ensembles#
set1 = {1, 2, 3, 4}set2 = {3, 4, 5, 6}
# Unionunion = set1 | set2print(union) # {1, 2, 3, 4, 5, 6}
# Intersectionintersection = set1 & set2print(intersection) # {3, 4}
# Différencedifference = set1 - set2print(difference) # {1, 2}Comparaison des structures de données#
| Structure | Ordonnée | Modifiable | Doublons | Accès |
|---|---|---|---|---|
| Liste | ✅ | ✅ | ✅ | Par index |
| Tuple | ✅ | ❌ | ✅ | Par index |
| Dictionnaire | ✅ | ✅ | ❌ | Par clé |
| Ensemble | ❌ | ✅ | ❌ | Par valeur |
Explication
Chaque structure de données a ses avantages. Choisissez celle qui correspond le mieux à vos besoins :
listpour des collections ordonnées modifiablestuplepour des données immuablesdictpour des données associativessetpour des collections d’éléments uniques
Cas d’usage pratiques#
Liste : Gestion d’une liste de tâches#
taches = ["Réviser Python", "Faire les exercices", "Projet final"]
# Ajouter une tâchetaches.append("Préparer l'examen")
# Marquer une tâche comme terminéetaches.remove("Réviser Python")Dictionnaire : Stockage d’informations utilisateur#
utilisateur = { "nom": "Jean", "email": "jean@example.com", "preferences": ["Python", "Web"]}
# Mettre à jour les préférencesutilisateur["preferences"].append("Data Science")Ensemble : Gestion des tags uniques#
tags_article = {"python", "programmation", "débutant"}tags_nouveau = {"python", "tutoriel", "débutant"}
# Tags communstags_communs = tags_article & tags_nouveauprint(tags_communs) # {"python", "débutant"}Exercices pratiques#
Conseil
-
Gestion d’inventaire : Créez un dictionnaire pour stocker des produits avec leurs prix et quantités.
-
Liste de contacts : Utilisez une liste de dictionnaires pour stocker des informations de contact.
-
Analyse de texte : Utilisez un ensemble pour trouver les mots uniques dans un texte.
Conclusion#
Les structures de données sont essentielles en Python. Chaque structure a ses avantages :
list: Pour des collections ordonnées et modifiablestuple: Pour des données immuables (coordonnées, configurations)dict: Pour des données associatives (profils utilisateur, configurations)set: Pour des collections uniques et des opérations mathématiques
Maîtrisez ces structures et vous serez capable de créer des programmes Python plus efficaces et organisés !