Aller au contenu

Les tuples en Python

947 mots·5 mins·
Cours Python Python Tuples
Ayédoun Châ-Fine ADEBI
Auteur
Ayédoun Châ-Fine ADEBI
Sommaire

Les Tuples en Python : Les Collections Inaltérables

Tu cherches une structure de données rapide, simple et inaltérable pour stocker des informations ? Le tuple en Python est ce qu’il te faut ! Un peu comme une liste, mais en version solide. Une fois créé, tu ne peux pas le modifier — ce qui le rend encore plus fiable quand tu as besoin d’une collection dont tu es sûr qu’elle ne changera jamais.

Dans cet article, on plonge dans le monde des tuples, une alternative aux listes quand tu as besoin de quelque chose de plus rigide et rapide. Prêt à découvrir pourquoi ces petites structures sont si puissantes ? Let’s go !

1. Créer un Tuple : Le Code Simplifié
#

Un tuple se crée en mettant des éléments entre parenthèses (). C’est aussi simple que ça. Si tu veux créer un tuple avec un seul élément, il faut ajouter une virgule pour que Python le reconnaisse comme un tuple.

Exemples :

# Tuple classique avec plusieurs éléments
coordonnees = (10, 20, 30)

# Tuple avec un seul élément
un_element = (5,)

Si tu ne mets pas la virgule, Python le prendra pour une simple parenthèse, pas un tuple. Le truc à retenir : une virgule à la fin, et bam, c’est un tuple.

2. Accéder aux Éléments : Rapide et Direct
#

Les tuples sont aussi indexés comme les listes. Donc, tu peux y accéder en utilisant des indices. Mais comme ils sont immuables, une fois créés, tu ne peux pas modifier directement leurs éléments. On parle de lecture seule.

Exemple :

coordonnees = (10, 20, 30)

# Accéder aux éléments via l'index
print(coordonnees[0])  # 10
print(coordonnees[1])  # 20

# Utiliser un indice négatif pour compter à partir de la fin
print(coordonnees[-1]) # 30

3. Tuples Immutables : Quand Le Code Ne Change Pas
#

Ce qui différencie vraiment un tuple d’une liste, c’est qu’il ne peut pas être modifié une fois créé. Pas de append(), pas de remove(), pas de modification directe des éléments. Si tu veux changer un tuple, tu devras en créer un nouveau.

Exemple de ce que tu ne peux pas faire :

coordonnees = (10, 20, 30)

# Ça va lever une erreur, car les tuples sont immuables
coordonnees[1] = 25  # TypeError: 'tuple' object does not support item assignment

4. Utilisation des Tuples comme Clé de Dictionnaire
#

Vu que les tuples sont immuables, ils peuvent être utilisés comme clé de dictionnaire. Cela n’est pas possible avec des listes, car elles sont mutables. Si tu as besoin de clés qui restent constantes, les tuples sont une excellente solution.

Exemple :

# Créer un dictionnaire avec un tuple comme clé
dictionnaire = {("x", "y"): "point", ("a", "b"): "lettres"}

print(dictionnaire[("x", "y")])  # "point"

5. Tuples avec Plus d’Un Élément : La Déconstruction
#

Un autre point intéressant des tuples est leur capacité à être facilement décomposés dans plusieurs variables. Cette technique, appelée unpacking, te permet de travailler de manière plus élégante et concise.

Exemple :

coordonnees = (10, 20)

# Décomposer un tuple
x, y = coordonnees
print(x)  # 10
print(y)  # 20

Tu peux même ignorer certains éléments lors de la déconstruction si tu n’en as pas besoin. Par exemple :

coordonnees = (10, 20, 30)

# Ignorer l'élément 30
x, y, _ = coordonnees
print(x)  # 10
print(y)  # 20

6. Tuples Imbriqués : La Superposition d’Informations
#

Les tuples peuvent également être imbriqués. Autrement dit, tu peux mettre un tuple à l’intérieur d’un autre tuple. Cela permet de créer des structures de données plus complexes de manière simple et efficace.

Exemple :

coordonnees = (10, (20, 30), 40)

# Accéder aux éléments imbriqués
print(coordonnees[1])   # (20, 30)
print(coordonnees[1][0]) # 20

7. Utilisation des Tuples : Performance et Légèreté
#

Les tuples, étant inaltérables, sont généralement plus rapides que les listes. Si tu as besoin de stocker une petite collection de données qui ne changera jamais, les tuples sont non seulement plus sûrs, mais aussi plus performants. Leur taille en mémoire est plus réduite, ce qui les rend efficaces quand tu travailles avec de grandes quantités de données ou dans des environnements où la performance est cruciale.

8. Les Méthodes des Tuples : Simples et Pratiques
#

Les tuples ont quelques méthodes intégrées, mais elles sont beaucoup plus limitées que celles des listes. Les deux principales méthodes que tu peux utiliser sont :

  • .count(x) : Compte le nombre d’occurrences de x dans le tuple.
  • .index(x) : Renvoie l’index de la première occurrence de x.

Exemple :

# Créer un tuple avec des éléments répétitifs
mon_tuple = (1, 2, 3, 1, 1)

# Compter les occurrences de 1
print(mon_tuple.count(1))  # 3

# Trouver l'index de la première occurrence de 1
print(mon_tuple.index(1))  # 0

9. Pourquoi Choisir un Tuple plutôt qu’une Liste ?
#

Alors, quand utiliser un tuple plutôt qu’une liste ? Voici quelques points pour t’aider à choisir :

  • Immutabilité : Si tu veux t’assurer que tes données ne changeront pas, choisis un tuple.
  • Performance : Les tuples sont plus légers en mémoire et plus rapides que les listes.
  • Utilisation comme clé de dictionnaire : Les tuples peuvent être utilisés comme clés dans un dictionnaire, contrairement aux listes.

Conclusion
#

Les tuples en Python sont des structures simples mais puissantes qui te permettent de stocker et manipuler des données de manière efficace et sûre. Leur immutabilité, leur capacité à être utilisés comme clés de dictionnaire, et leur performance en font des outils incontournables lorsque tu travailles avec des données fixes.

Alors, prêt à intégrer les tuples dans ton code et à profiter de leur efficacité ? C’est une petite touche de solidité qui peut faire toute la différence !