Tuto Python : créer et manipuler une liste des tuples
Table des matières
4.1. Méthode 1 : list() constructor
4.3. Méthode 3 : Déballage de plusieurs tuples
4.4. Méthode 4 : Expression du générateur
4.5. Méthode 5 : Expression du générateur + déballage
5.1. Initialiser la liste des tuples
5.2. Ajouter le tuple à la liste des tuples
5.3. Mettre à jour un tuple dans la liste des tuples
5.4. Retirer un tuple de la liste des tuples
Introduction :
Dans ce chapitre on va découvrir les tuples premièrement, comment les créer et comment transformer un tuple à une liste, ensuite la création des listes de tuples, et pour la manipulation on va apprendre plusieurs méthodes :
Initialiser la liste des tuples, ajouter un tuple dans une liste de tuples, mettre à jour le tuple dans la liste des tuples, et enfin retirer le tuple de la liste des tuples.
Pour maitriser les méthode décrit au début il y a des exercice et des solutions.
1. Syntaxe de Python tuple () :
La fonction tuple() intégrée de Python crée et renvoie un nouvel objet tuple. Lorsqu'elle est utilisée sans argument, elle renvoie un tuple vide. Lorsqu'elle est utilisée avec l'argument itérable optionnel, elle initialise le nouveau tuple avec les éléments de l'itérable.
Sa syntaxe est la suivante :
tuple()
Parameter:
Élément : L'élément que vous voulez créer dans tuple.
Exemple :
Syntaxe :
T= tuple()
T
Résultat d’exécution :
tuple vide
Syntaxe :
T = tuple([1,2,3])
T
Résultat d’exécution :
Ce deuxième tuple créé contient des éléments.
2. Utilisation du tuple () :
Voici quelques exemples de l'utilisation de la fonction intégrée tuple() :
Vous pouvez créer un tuple vide en sautant l'argument :
Exemple :
Syntaxe :
tuple()
Résultat d’exécution :
Exemple :
Si vous passez un itérable - tel qu'une liste, un autre tuple, un ensemble ou un dictionnaire - vous obtenez un nouvel objet tuple avec des éléments de tuple obtenus à partir de l'itérable :
Syntaxe :
tuple([10,20,30])
Résultat d’exécution :
Notez qu'il crée réellement un nouvel objet tuple qui peut être différent de celui passé en argument. Cependant, ce n'est pas toujours le cas :
Syntaxe :
A = (1,2,3)
B =tuple(A)
A is B
Résultat d’exécution :
A == B
Résultat d’exécution :
Le nouveau tuple B a les mêmes éléments que le tuple A original. Mais comme les tuples sont immuables - ils ne peuvent pas être modifiés - ils pointent tous deux vers le même objet en mémoire : comme vous pouvez le voir sur le contrôle A est B qui renvoie Vrai.
3. Syntaxe :
Vous pouvez utiliser la méthode tuple() avec ou sans l'argument itérable optionnel.
Syntaxe : Il y a deux façons d'utiliser le constructeur :
tuple() -> nouveau tuple vide, vous n'aurez probablement jamais besoin de cela
tuple(itérable) -> nouveau tuple initialisé avec des éléments dans itérable
Syntaxe :
t1 = tuple((1, 2, 3))
t2 = tuple({1:'Alice', 2:'Bob', 3:'Ann'})
print(t1 == t2)
Résultat d’exécution :
4. Convertir Tuple en liste:
La façon la plus simple, la plus directe et la plus lisible de convertir un tuple en liste est la fonction intégrée de Python list(tuple). Vous pouvez passer n'importe quel itérable (comme un tuple, une autre liste ou un ensemble) comme argument dans cette fonction dite "constructor" et elle renvoie une nouvelle structure de données de liste qui contient tous les éléments de l'itérable.
Problème :
Nous avons un tuple d'éléments. Créer une nouvelle liste avec les mêmes éléments - en convertissant le tuple en une liste.
Exemple :
Vous avez le tuple suivant.
t = (1, 2, 3)
Vous voulez créer une nouvelle structure de données de liste qui contient les mêmes éléments entiers :
[1, 2, 3]
Examinons les différentes façons de convertir un tuple en liste - et discutons de la façon la plus « pythonienne » de le faire dans telle ou telle circonstance.
4.1. Méthode 1 : list() constructor
Syntaxe :
t = (1, 2, 3)
lst = list(t)
print(lst)
Résultat d’exécution :
La façon la plus simple, la plus directe et la plus lisible de convertir un n-uplet en liste est la fonction de liste (itérable) intégrée de Python. Vous pouvez passer n'importe quel itérable (comme une liste, un tuple ou un ensemble) comme argument dans cette fonction dite "constructor" et elle renvoie une nouvelle structure de données de tuple qui contient tous les éléments de l'itérable.
4.2. Méthode 2 : Unpacking
Syntaxe :
t = (1, 2, 3)
lst = [*t]
print(lst)
Résultat d’exécution :
Il existe une alternative qui fonctionne pour un ou plusieurs tuples pour convertir un ou plusieurs tuples en une liste. Cette méthode est tout aussi efficace et prend moins de caractères que la méthode 1 (au détriment de la lisibilité pour les codeurs débutants). Cela vous semble intéressant ? Plongeons dans le déballage et l'opérateur d'astérisques !
L'opérateur astérisque * est aussi appelé "opérateur étoile" et vous pouvez l'utiliser comme préfixe sur n'importe quel tuple (ou liste). L'opérateur "déballera" tous les éléments dans une structure extérieure, par exemple dans une liste d'arguments ou dans un type de conteneur englobant comme une liste ou un n-uplet.
4.3. Méthode 3 : Déballage de plusieurs tuples
Syntaxe :
t1 = (1, 2, 3)
t2 = (4, 5, 6)
lst = [*t1, *t2]
print(lst)
Résultat d’exécution :
L'expression [*t1, *t2] décompose tous les éléments des tuples t1 et t2 dans la liste extérieure. Cela vous permet de convertir plusieurs tuples en une seule liste.
4.4. Méthode 4 : Expression du générateur
Syntaxe :
ts = ((1, 2), (3, 4), (5, 6))
lst = list(x for t in ts for x in t)
print(lst)
Résultat d’exécution :
C'est la façon la plus pythonique de convertir une liste de tuples (ou un tuple de tuples) en un tuple. Il est court, efficace et lisible. Vous ne créez aucune structure de données d'aide qui prend de la place en mémoire.
4.5. Méthode 5 : Expression du générateur + déballage :
Syntaxe :
lst = [[1, 2], [3, 4], [5, 6]]
t = (*(x for l in lst for x in l),)
print(t)
Résultat d’exécution :
Au lieu d'utiliser la fonction tuple(...) pour convertir l'expression de génération en un tuple, vous utilisez la structure d'aide (...,) pour indiquer qu'il s'agit d'un tuple que vous voulez - et vous décompressez tous les éléments de l'expression de génération dans le tuple. Bien sûr, ce n'est pas très lisible - mais vous pourriez voir une telle chose en pratique.
5. Liste des tuples en python :
La liste est une collection d'objets. Et le tuple peut être considéré comme un objet. Ainsi, vous pouvez avoir une liste de tuples en python.
5.1. Initialiser la liste des tuples :
Syntaxe :
liste_des_tuples = [(1,'amine',92), (2,'Surya',95), (3,'ayman',93)]
liste_des_tuples
Résultat d’exécution :
5.2. Ajouter le tuple à la liste des tuples :
Utilisez la méthode append() pour ajouter un élément, dans ce cas un tuple, à la liste.
Syntaxe :
liste_des_tuples = [(1,'amine',92), (2,'Surya',95), (3,'ayman',93)]
liste_des_tuples.append((4,'mina',94))
liste_des_tuple
Résultat d’exécution :
5.3. Mettre à jour un tuple dans la liste des tuples :
Vous pouvez remplacer un tuple par un autre tuple, mais pas modifier un tuple en place dans la liste, car les tuples sont immuables.
Syntaxe :
liste_des_tuples = [(1,'amine',92), (2,'Surya',95), (3,'ayman',93)]
liste_des_tuples[1] = ((5,'nouveau',94))
liste_des_tuples
Résultat d’exécution :
5.4. Retirer un tuple de la liste des tuples :
Utilisez le mot-clé del pour supprimer tout tuple, en utilisant l'index, d'une liste de tuples, comme le montre cet exemple de programme.
Syntaxe :
liste_des_tuples = [(1,'amine',92), (2,'Surya',95), (3,'ayman',93)]
del liste_des_tuples[1]
liste_des_tuples
Résultat d’exécution :
6. Exercice :
6.1. Exercice 1 :
A partir des éléments de la tuple suivante créer une list est affiche la liste :
(1,10,1998)
6.2. Exercice 2 :
En utilisant la Méthode 4 : « Expression du générateur »
Transformer la liste des tuples suivante à une seule liste :
Tuple = ((1,2),(3,4),(5,6))
Et afficher : liste_tuples
6.3. Exercice 3 :
Initialiser la liste de tuple suivant :
Liste_tuple =[(1,’A’,10),(2,’B’,20),(3,’C’,30)]
Ajouter le tuple (4,’D’,40) dans Liste_tuple
Afficher le résultat.
6.4. Exercice 4 :
Considérons la liste des tuple suivante :
Liste = [(1, 'A', 10), (2, 'B', 20), (3, 'C', 30), (4, 'D', 40)]
Supprimer le tuple (2,’B’,20) de la liste te affiche la nouvelle liste.
7. Solution :
7.1. Exercice 1 :
Syntaxe :
tuple = (1,10,1998)
liste_tuple =[tuple]
liste_tuple
Résultats de l’affichage :
7.2. Exercice 2 :
Syntaxe :
Tuple = ((1,2),(3,4),(5,6))
liste = list(x for t in Tuple for x in t)
print(liste)
Résultats de l’affichage :
7.3. Exercice 3 :
Syntaxe :
Liste_tuple =[(1,'A',10),(2,'B',20),(3,'C',30)]
Liste_tuple.append((4,'D',40))
Liste_tuple
Résultats de l’affichage :
7.4. Exercice 4 :
Syntaxe :
Liste = [(1, 'A', 10), (2, 'B', 20), (3, 'C', 30), (4, 'D', 40)]
del Liste[2]
Liste
Résultats de l’exécution :
Conclusion
Dans ce tutoriel d'exemples Python, nous avons découvrir les tuples, comment créer un tuple, comment transformer un tuple à une liste, et comment créer une liste des tuples.
Nous avons appris comment initialiser, accéder et modifier une liste de tuples, à l'aide de programmes d'exemples Python bien détaillés.
Article publié le 29 Janvier 2021 par Mouhtat Bilal