Notions de base sur les tuples

3.5 Notions de base sur les tuples

Objectifs d'apprentissage

À la fin de cette section, vous devriez être capable de :

  • Décrire les caractéristiques et les avantages d'un tuple.
  • Développer un programme qui crée et utilise correctement un tuple.
  • Identifier et analyser la mutabilité d'un tuple.

Création de tuples et accès aux éléments

Un tuple est une séquence de valeurs séparées par des virgules qui peut contenir des éléments de différents types. Un tuple doit être créé avec des virgules entre les valeurs, et la séquence est conventionnellement entourée de parenthèses. On accède à chaque élément par son indice, en commençant par le premier élément à l'indice 0.

tuple_1 = (2, 3, 4)
print(f'tuple_1: {tuple_1}')
print(tuple_1[1])
print()
data_13 = ('Aimee Perry', 96, [94, 100, 97, 93])
print(f'data_13: {data_13}')
print(data_13[2])
  
tuple_1: (2, 3, 4)
3

data_13: ('Aimee Perry', 96, [94, 100, 97, 93])
[94, 100, 97, 93]
Tableau 3.4 Exemples de tuples.

Concepts en pratique

Création de tuples et accès aux éléments

1.
Considérez l'exemple ci-dessus. Laquelle permet d'accéder au premier élément de tuple_1' ?
  1. tuple_1[0]
  2. tuple_1[1]
  3. tuple_1[2]
2.
Laquelle crée un tuple valide ?
  1. tuple_2 = (42, 26, 13)
  2. tuple_3 = (42, 26, 13.5)
  3. les deux
3.
Laquelle crée un tuple avec trois éléments ?
  1. my_tuple = 'a', 'b', 'c'
  2. my_tuple = ['a', 'b', 'c']
  3. my_tuple = ('a', 'b', 'c')

Propriétés des tuples

Comment les tuples se comparent-ils aux listes ? Les tuples sont ordonnés et autorisent les doublons, comme les listes, mais ont une mutabilité différente. Un objet immuable (immutable) ne peut pas être modifié après sa création. Un objet mutable peut être modifié après sa création. Les tuples sont immuables, tandis que les listes sont mutables.

Faites le point

Mutabilité d'un tuple par rapport à une liste

Concepts en pratique

Utilisation des tuples

4.
Considérez le dernier programme dans l'exemple ci-dessus. Quelle est la valeur de my_tuple ?
  1. (0.693, 0.414, 3.142)
  2. (0.693, 1.414, 3.142)
  3. Error
5.
Pourquoi le code suivant génère-t-il une erreur ?
tuple_1 = ('alpha', 'bravo', 'charlie')
tuple_1.append('charlie')
  1. La méthode append() n'est pas disponible pour les tuples.
  2. Les doublons ne sont pas autorisés.
  3. Les chaînes de caractères ne sont pas autorisées
6.
Un programmeur souhaite créer une séquence de constantes facilement consultable qui ne peut être modifiée nulle part dans le programme. Quelle séquence serait la plus appropriée ?
  1. liste
  2. tuple

Mutabilité et performances

Les tuples sont immuables et ont une taille fixe, ils utilisent donc moins de mémoire. Dans l'ensemble, les tuples sont plus rapides à créer et à manipuler, ce qui se traduit par de meilleures performances pouvant être perceptibles avec de grandes quantités de données.

À vous d'essayer

Création d'un tuple à partir d'une liste

Supposons qu'un programmeur veuille créer un tuple à partir d'une liste afin d'empêcher toute modification ultérieure. La fonction tuple() crée un tuple à partir d'un objet tel qu'une liste. Ex. : my_tuple = tuple(my_list) crée un tuple à partir de la liste my_list. Mettez à jour le programme ci-dessous pour créer un tuple final_grades à partir de la liste grades.

À vous d'essayer

Création d'un tuple avec une saisie utilisateur

Écrivez un programme qui lit deux chaînes de caractères et deux entiers depuis l'entrée et crée un tuple, my_data, avec ces quatre valeurs.

Pour l'entrée suivante :

    x
    y
    15
    20

La sortie est :

    my_data: ('x', 'y', 15, 20)