logo

Les Structures de Données en Python

Objectifs Pédagogiques
  • Comprendre les différentes collections de données proposées par Python.
  • Savoir créer et manipuler des listes, tuples, dictionnaires et ensembles.
  • Choisir la structure adaptée selon le contexte.
  • Utiliser les méthodes de base pour parcourir, ajouter, supprimer ou transformer les données.

1. Les Listes

Définition
Une liste est une collection ordonnée et modifiable d’éléments. Elle peut contenir des types différents.

Exemples d’utilisation

# Création d'une liste
fruits = ["pomme", "banane", "cerise"]

# Ajouter un élément
fruits.append("orange")

# Insérer un élément à une position donnée
fruits.insert(1, "mangue")

# Supprimer un élément
fruits.remove("banane")

# Accéder à un élément
print(fruits[0])  # "pomme"

Méthodes utiles

Méthode Action
append(x) Ajoute x à la fin
insert(i, x) Insère x à l’indice i
remove(x) Supprime le premier x rencontré
pop(i) Supprime et retourne l’élément à l’indice i
sort() Trie la liste
reverse() Inverse l’ordre

2. Les Tuples

Définition
Un tuple est une collection ordonnée mais immuable. On ne peut pas modifier ses éléments après création.

Exemple

coordonnees = (10, 20)

# Accès
print(coordonnees[0])  # 10

# Décomposition
x, y = coordonnees
print(x, y)  # 10 20

Les tuples sont utiles pour retourner plusieurs valeurs d'une fonction, ou stocker des données constantes.


3. Les Dictionnaires

Définition
Un dictionnaire stocke des données sous forme clé-valeur. Il n’est pas ordonné (jusqu'à Python 3.7).

Exemple

etudiant = {
    "nom": "Alice",
    "age": 22,
    "ville": "Paris"
}

# Accès
print(etudiant["nom"])  # "Alice"

# Modifier ou ajouter
etudiant["age"] = 23

# Supprimer
del etudiant["ville"]

Méthodes utiles

Méthode Action
get(clé) Retourne la valeur associée à la clé
keys() Liste des clés
values() Liste des valeurs
items() Liste des couples (clé, valeur)
pop(clé) Supprime et retourne la valeur de la clé

4. Les Ensembles

Définition
Un ensemble est une collection non ordonnée qui ne contient pas de doublons.

Exemple

nombres = {1, 2, 3}

# Ajouter
nombres.add(4)

# Supprimer
nombres.discard(2)

Opérations ensemblistes

Opération Description
union() Union de deux ensembles
intersection() Éléments communs
difference() Différence entre deux ensembles
issubset() Vérifie si c’est un sous-ensemble
A = {1, 2, 3}
B = {3, 4, 5}

print(A.union(B))        # {1, 2, 3, 4, 5}
print(A.intersection(B)) # {3}

5. Choisir la Bonne Structure

Structure Ordonnée Modifiable Clé ou index Idéal pour…
Liste Oui Oui Index Collection simple et modifiable
Tuple Oui Non Index Valeurs constantes ou retour multiple
Dictionnaire Non Oui Clés Associer des clés à des valeurs
Ensemble Non Oui Non Éléments uniques et tests d’appartenance

6. Exercices

Exercices
Exercice 1 : Liste triée

Créer une liste prenoms avec 3 prénoms, ajoutez-en un autre, puis affichez la liste triée.

prenoms = ["Lina", "Marc", "Sami"]
prenoms.append("Zoé")
prenoms.sort()
print(prenoms)
Exercice 2 : Dictionnaire de personne

Créer un dictionnaire avec les clés nom, age, ville, modifiez l’âge et affichez le résultat.

personne = {"nom": "Jules", "age": 30, "ville": "Lyon"}
personne["age"] = 31
print(personne)
Exercice 3 : Opérations sur ensembles

Créer deux ensembles avec des éléments en commun. Afficher l’union et l’intersection.

A = {1, 2, 3}
B = {2, 3, 4}
print(A.union(B))         # {1, 2, 3, 4}
print(A.intersection(B))  # {2, 3}

7. Résumé des Commandes

Commande Description
append(), insert() Manipuler une liste
sort(), reverse() Trier ou inverser
get(), items() Parcourir un dictionnaire
union(), intersection() Opérations d’ensembles