NSI · premiere speGratuit
Chapitre 2 — Représentation des données : types construits
L'essentiel en 30 secondes
Python propose trois types construits essentiels : les tableaux (list), les tuples (tuple) et les dictionnaires (dict). Les tableaux sont modifiables (mutables), les tuples non (immutables). Les dictionnaires associent des clés à des valeurs, avec un accès ultra-rapide. Savoir choisir le bon type selon le besoin est fondamental.
Notions clés
- Tableau (list)
- Collection ordonnée et mutable d'éléments. Accès par indice (commence à 0). Ex : [1, 2, 3].
- Tuple
- Collection ordonnée et immutable. Une fois créé, on ne peut ni ajouter ni modifier. Ex : (1, 2, 3).
- Dictionnaire (dict)
- Collection de paires clé: valeur, non ordonnée par indice. Accès par clé. Ex : {'nom': 'Alice', 'age': 17}.
- Mutable / Immutable
- Mutable = modifiable après création (list, dict). Immutable = non modifiable (tuple, str, int).
- Compréhension de liste
- Syntaxe compacte pour créer un tableau : [expr for x in iterable if condition].
Formules
Créer un tableau par compréhension
Condition : Produit [0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
Accès dictionnaire avec get()
Condition : Évite une KeyError si la clé n'existe pas
Parcours d'un dictionnaire
Condition : items() renvoie les paires (clé, valeur)
Ajout dans un tableau
Condition : Ajoute element à la fin du tableau. Complexité O(1) amorti.
Accès par clé dans un dictionnaire
Condition : Complexité O(1) en moyenne grâce au hachage
A retenir
- Un tableau est mutable : t[0] = 5 modifie le tableau. Un tuple est immutable : toute tentative de modification lève une erreur.
- L'accès par clé dans un dictionnaire est en O(1) en moyenne : c'est beaucoup plus rapide qu'une recherche dans un tableau.
- Les clés d'un dictionnaire doivent être immutables (str, int, tuple) — jamais une liste.
Erreurs classiques
Erreur : Confondre indice et valeur : utiliser tab[valeur] au lieu de tab[indice]
Correction : L'indice est la position (0, 1, 2…), pas la valeur stockée. Pour chercher une valeur, utilise 'in' ou index().
Erreur : Modifier un tuple : TypeError
Correction : Un tuple est immutable. Si tu as besoin de modifier, utilise un tableau (list).
Erreur : Utiliser une liste comme clé de dictionnaire
Correction : Les clés doivent être immutables. Utilise un tuple à la place d'une liste si nécessaire.
Astuce méthode
Au , avant de coder, : besoin de modifier les données Si oui list ou dict. Si non tuple. besoin d'un accès par Si oui dict.