Exercice 24 / 100

Tuples

ConsigneCrée le tuple `coords = (48.8566, 2.3522)` (coordonnées de Paris), déballe-le dans `lat` et `lon`, et affiche-les

📖 Cours

Un tuple ressemble à une liste, mais il est immuable : on ne peut pas le modifier après création.

Création : avec des parenthèses ( ) et des virgules.

coords = (48.8566, 2.3522) # Parispoint_3d = (1, 2, 3)singleton = (42,) # ⚠ virgule obligatoire pour 1 élémentvide = ()

Ce sont les virgules qui font le tuple, pas les parenthèses (seule exception : le tuple vide (), qui n'a que des parenthèses) :

t = 1, 2, 3 → équivalent à (1, 2, 3)

(1) → c'est juste 1 entre parenthèses, pas un tuple

(1,) → tuple à 1 élément

Accès : pareil qu'une liste

coords[0] → 48.8566coords[-1] → 2.3522coords[:1] → (48.8566,)len(coords) → 248.8566 in coords → True

mais on ne peut pas faire :

coords[0] = 50 ❌ TypeError : tuple ne supporte pas l'assignationcoords.append(0) ❌ AttributeError : pas de méthode append

Déballage (unpacking) : LE gros avantage

Un tuple peut être directement déballé dans plusieurs variables :

coords = (48.8566, 2.3522)lat, lon = coords # lat = 48.8566, lon = 2.3522
# Échanger deux variables en 1 ligne !a, b = 5, 10a, b = b, a # a=10, b=5
# Une fonction peut renvoyer plusieurs valeurs sous forme de tupledef min_max(lst): return min(lst), max(lst)
mini, maxi = min_max([3, 7, 1, 9])
Le déballage range les éléments d'un tuple dans autant de variables et dans le même ordre : lat reçoit le premier, lon le second
Le déballage range les éléments d'un tuple dans autant de variables et dans le même ordre : lat reçoit le premier, lon le second

Tuple vs Liste : quand utiliser quoi ?

Liste → collection qui peut changer (ex : panier d'achats)Tuple → collection fixe, souvent hétérogène (ex : coordonnées GPS, paire clé-valeur, ligne d'une table)

Les tuples sont aussi plus rapides et utilisables comme clés de dictionnaire (les listes non).

Envie d'aller plus loin ? Découvrez nos formations certifiées Bac+2 à Bac+5 →