python tuple tutorial with hands examples
Explorez le concept de Tuple en Python et Tuple vs List dans ce didacticiel avec des exemples:
En Python, nous avons quatre types de données de collecte comme mentionné ci-dessous:
- Lister
- Ensemble
- dictionnaire
- Tuple
Dans ce tutoriel, nous examinerons en profondeur Tuple en Python et ses différentes opérations. Ne manquez pas de lire notre Gamme complète de didacticiels Python .
En Python, le tuple est une structure de données et est similaire à un tableau utilisé pour stocker plusieurs données à la fois. Si vous avez de l'expérience dans d'autres langages de programmation comme Java, C, C ++, etc., vous serez familiarisé avec le concept de tableaux, donc le tuple est presque le même que les tableaux.
Ce que vous apprendrez:
- Qu'est-ce qu'un tuple?
- Tuple vs liste
- Créer un tuple
- Accéder aux valeurs dans Tuple
- Indexation négative
- Trancher le tuple
- Changer un tuple
- Conversion de liste en tuple
- Conversion d'un tuple en chaîne
- Trier le tuple en Python
- Emballage et déballage du tuple
- NamedTuple
- Tuple de retour
- Index de tuple hors de portée
- Suppression du tuple
- Opérations de base sur les tuples
- Méthodes de tuples intégrées
- Conclusion
- lecture recommandée
Qu'est-ce qu'un tuple?
Un tuple est une structure de données utilisée pour stocker plusieurs données à la fois. Les données stockées dans un tuple sont hétérogènes et cela en fait en effet la fonctionnalité la plus puissante du tuple en Python. Nous pouvons également stocker plusieurs données de différents types de données comme String, Integers et objets dans un seul tuple.
Un tuple est immuable en Python, les données ne peuvent donc pas être modifiées une fois qu'elles sont affectées.
Les données stockées dans un tuple sont accessibles à l'aide de leur index, car l'index de tuple commencera toujours à zéro. Chaque élément a une place spécifique dans le tuple et toutes ces données sont accessibles à l'aide de l'index.
Tuple vs liste
- La liste en Python est modifiable (les valeurs peuvent être modifiées) tandis que Tuple est immuable (les valeurs ne peuvent pas être modifiées)
- Par rapport à la structure de données de liste, le tuple fournit moins de fonctionnalités en Python.
- Comme les tuples sont immuables, cela augmente les performances car l'itération dans un tuple est plus rapide par rapport à la liste.
Créer un tuple
Les données d'un tuple sont stockées séparées par des virgules et placées entre crochets (). Les tuples peuvent contenir n'importe quel nombre d'éléments de types différents.
Syntaxe:
Tuple = (item1, item2, item3)
Exemple 1
Tuple = ()
Exemple: 2
Tuple = (2, 4, 5.6)
Exemple: 3
Tuple = (2, 5, 4.5, “Hi”)
Exemple: 4
Tuple = (“Hi”, “Hello”, “Python”)
Si nous observons les exemples ci-dessus, nous avons stocké des éléments de différents types de données séparés par des virgules où 2 et 5 sont de type Integer, 4.5 est de type float et «Hi» est de type String. Nous pouvons également déclarer un tuple vide.
La clé de sécurité du réseau est-elle identique au mot de passe
Nous pouvons également déclarer une liste ou un tuple dans un tuple, et cela s'appelle un tuple imbriqué.
Exemple: 5
Tuple = (“Python”, (2, 4, 6), (4, 5.6, “Hi”)) print(“Contents of tuple is:”, Tuple)
Production:
Le contenu du tuple est: (‘Python’, (2, 4, 6), (4, 5.6, ‘Hi’))
Si vous observez l'exemple ci-dessus, nous avons déclaré une liste et un tuple dans un autre tuple.
Si le tuple ne contient qu'un seul élément, il n'est pas considéré comme un tuple. Il doit s'agir d'une virgule de fin pour indiquer à l'interpréteur qu'il s'agit d'un tuple.
Voyons voir, dans l'exemple ci-dessous
Exemple: 6
my_tuple = (“Python”) Print(“Type of my_tuple is:”, type(my_tuple)) my_tuple = (10) Print(“Type of my_tuple is:”, type(my_tuple)) my_tuple = (“Python”, ) Print(“Type of my_tuple is:”, type(my_tuple))
Production:
Le type de mon_tuple est:
Le type de mon_tuple est:
Le type de mon_tuple est:
Accéder aux valeurs dans Tuple
Il existe plusieurs façons d'accéder aux éléments présents dans le tuple en Python. À l'aide d'un index, nous pouvons accéder aux éléments du tuple. L'index commence à 0 et l'index doit toujours être un entier. Si nous utilisons un index autre qu'un entier comme float, cela entraînera TypeError.
Exemple 1
Tuple = (3, 5, 6.7, “Python”) print(“Tuple is:”, Tuple)
Production:
Tuple est: (3. 5. 6.7, «Python»)
Dans l'exemple ci-dessus, nous avons directement imprimé le tuple à l'aide de la fonction d'impression et nous n'accédons pas aux éléments individuels du tuple.
Accédons aux éléments individuels du tuple.
Exemple: 2
Tuple = (3, 5, 6.7, “Python”) print(“Third element of the Tuple is:”, Tuple(2))
Production:
Le troisième élément du tuple est: 6.7
Exemple: 3
Tuple = (3, 5, 6.7, “Python”) print(“First element of the Tuple is:”, Tuple(0)) print(“Last element of the Tuple is:”, Tuple(3))
Production:
Le premier élément du Tuple est: 3
Le dernier élément du tuple est: «Python»
Nous pouvons également accéder aux éléments présents dans le tuple imbriqué à l'aide de l'indexation imbriquée.
Exemple: 4
Tuple = (“Python”, (2, 4, 6), (4, 5.6, “Hi”)) print(“First element of the tuple is:”, Tuple(0)(1)) print(“Items present inside another list or tuple is:”, Tuple(2)(1))
Production:
Le premier élément du tuple est: «y»
Les éléments présents dans une autre liste ou tuple sont: 5.6
Comme discuté dans le Tutoriel sur la liste Python les valeurs à l'intérieur de la liste imbriquée sont stockées sous la forme d'une matrice, de même, Tuple suit également le même concept.
P y t h o n
2 4 6
4 5.6 Salut
Ainsi, lorsque nous essayons d'accéder à Tuple (0) (1), il pointera vers le 1strangée et 2ndcolonne pour que les données soient «y».
De même, lorsque nous essayons d'accéder à List (2) (1), il pointera vers le 3rdrangée et 2ndcolonne donc, les données seront 5,6
Remarque:Le concept ci-dessus ne fonctionne que lorsque vous essayez d'accéder aux éléments du tuple à l'aide de l'indexation imbriquée.
Indexation négative
Nous pouvons également accéder aux données en utilisant un indice négatif. Un index négatif commencera toujours à -1 et -1 se réfère au dernier élément et -2 se réfère au dernier élément de seconde et donc le long.
Rappelez-vous toujours que l'indexation positive est utilisée pour itérer les éléments d'un tuple de manière ascendante, tandis que l'indexation négative suit la manière inverse.
Exemple 1
Tuple = (3, 5, 7.8) print(“Last element of the tuple is:”, Tuple(-1))
Production:
Le dernier élément du tuple est: 7.8
Exemple: 2
Tuple = (3, 5, 7.8) print(“First element of the tuple is:”, Tuple(-3))
Production:
Le premier élément du tuple est: 3
Trancher le tuple
En utilisant l'opérateur slice (:), nous pouvons accéder à une plage d'éléments à partir du tuple.
Exemple 1
Tuple = (1, 2.5, 3, 4.9, 5, 6, “Python”) print(“Elements from 2nd to 5th is: ”, Tuple(1:5)) print(“Elements beginning to 4th is: ”, Tuple(:-3)) print(“Elements 4th to end is: ”, Tuple(3:)) print(“Elements from start to end is: “, Tuple(:))
Production:
Les éléments du 2ème au 5ème sont: (2.5, 3, 4.9, 5)
Les éléments commençant au 4e sont: (1, 2.5, 3, 4.9)
Les éléments du quatrième à la fin sont: (4.9, 5, 6, «Python»)
Les éléments du début à la fin sont: (1, 2.5, 3, 4.9, 5, 6, «Python»)
On peut également accéder aux éléments présents dans le tuple en utilisant la boucle for.
Exemple: 2
Tuple = (3, 5, 7.8) print(“First element of the tuple is:”, Tuple(-3))
Production:
1
deux
3,5
5
'Salut'
Changer un tuple
Comme nous le savons, les tuples sont immuables en Python, donc les données ne peuvent pas être modifiées, mais les listes sont modifiables. Ainsi, les listes présentes à l'intérieur des tuples (tuple imbriqué) peuvent être modifiées.
Exemple 1
Tuple = (3, 4.5, (4, 5, 6)) print(“Original Tuple is:”, Tuple) Tuple(2)(0) = 2 print(“Updated Tuple is:”, Tuple)
Production:
Le tuple d'origine est: (3, 4.5, (4, 5, 6))
Le tuple mis à jour est: (3, 4.5, (2, 5, 6))
Nous ne pouvons pas utiliser la fonction append () ou extend () dans le Tuple car les tuples sont immuables. Vous ne pouvez pas non plus utiliser la fonction remove () ou pop ().
Conversion de liste en tuple
Nous pouvons convertir une liste en Tuple en utilisant une fonction intégrée Python appelée tuple ().
Syntaxe:
tuple(arg1)
La fonction Tuple () accepte un argument, et l'argument doit être le nom de la variable de liste.
Exemple 1
List = (2, 4, 5.6, “Hi”) print(“Original List is:”, List) Tuple = tuple(List) print(“After converting to tuple is:”, Tuple)
Production:
La liste d'origine est: (2, 4, 5.6, 'Salut')
Après la conversion en tuple est: (2, 4, 5.6, «Hi»)
Conversion d'un tuple en chaîne
Nous pouvons également convertir Tuple en String de 2 manières.
Approche: 1
En utilisant la méthode intégrée join () de String, nous pouvons convertir Tuple en String.
Exemple 1
def convertTupleToString(my_tuple): s = ‘’.join(my_tuple) return s Tuple = (‘P’, ‘y’, ‘t’, ‘h’, ‘o’, ‘n’) print(“Before converting to String:”, Tuple) str = convertTupleToString(Tuple) print(“After converting to String:”, str)
Production:
Avant la conversion en chaîne: ('P', 'y', 't', 'h', 'o', 'n')
Après la conversion en chaîne: 'Python'
Approche: 2
La méthode reduction () des functools est utilisée pour convertir Tuple en String. Cette méthode concatène le caractère présent dans le tuple et produit une chaîne.
Exemple: 2
import operator import functools def convertTupleToString(my_tuple): s = functools.reduce(operator.add, (my_tuple)) return s Tuple = (‘P’, ‘y’, ‘t’, ‘h’, ‘o’, ‘n’) print(“Before converting to String:”, Tuple) str = convertTupleToString(Tuple) print(“After converting to String:”, str)
Production:
Avant la conversion en chaîne: ('P', 'y', 't', 'h', 'o', 'n')
Après la conversion en chaîne: 'Python'
Remarque: Vous pouvez convertir Tuple en String uniquement si le Tuple contient des caractères. Si le tuple contient un élément de type entier ou flottant, il lèvera une erreur.
Exemple: 3
def convertTupleToString(my_tuple): s = ‘’.join(my_tuple) return s Tuple = (‘P’, ‘y’, ‘t’, ‘h’, ‘o’, ‘n’, 4, 6.5) print(“Before converting to String:”, Tuple) str = convertTupleToString(Tuple) print(“After converting to String:”, str)
Production:
Avant la conversion en chaîne: ('P', 'y', 't', 'h', 'o', 'n', 4, 6.5)
Traceback (dernier appel le plus récent):
Fichier '', ligne 1, dans
str = ”.join (Tuple)
TypeError: élément de séquence 6: instance de str attendue, int trouvé
Trier le tuple en Python
En python, nous avons une fonction intégrée appelée sorted () pour trier les éléments du tuple.
Syntaxe:
c ++ génère un nombre aléatoire entre 0 et 1
sorted(arg1)
La méthode sorted () accepte un argument qui est un nom de variable.
Exemple 1
def sortTuple(my_tuple): sort = sorted(my_tuple) return sort Tuple = (2, 4, 6, 1, 4, 7.8, 2.7) print(“Before sorting the Tuple is:”, Tuple) sortedTuple = sortTuple(Tuple) print(“After sorting the Tuple is:”, sortedTuple)
Production:
Avant de trier le tuple est: (2, 4, 6, 1, 4, 7.8, 2.7)
Après le tri, le Tuple est: (1, 2, 2.7, 4, 4, 6, 7.8)
Emballage et déballage du tuple
Python fournit une fonctionnalité importante appelée empaquetage et décompression. Lors de la compression, nous mettons la valeur dans un tuple, mais lors de la décompression, nous extrayons toutes ces valeurs stockées dans les tuples dans des variables.
Exemple 1
Tuple = (“John”, 23567, “Software Engineer”) (eName, eID, eTitle) = Tuple print(“Packed tuples is:”, Tuple) print(“Employee name is:”, eName) print(“Employee ID is:”, eID) print(“Employee Title is:”, eTitle)
Production:
Les tuples emballés sont: («John», 23567, «Software Engineer»)
Le nom de l'employé est: John
L'ID d'employé est: 23567
Le titre de l'employé est: Ingénieur logiciel
Si vous remarquez dans le cas ci-dessus à la ligne numéro 2, nous décompressons le tuple en quelques variables.
Remarque: Le nombre d'éléments dans le tuple doit être égal au nombre de variables dans le tuple décompressé.
NamedTuple
Python fournit un type spécial de fonction appelée namedtuple () qui provient du module de collection.
Les tuples nommés sont similaires à un dictionnaire contenant des clés et des valeurs. Mais la différence est que dans le dictionnaire, nous ne pouvons accéder à la valeur qu'à l'aide de la clé, mais NamedTuple prend en charge l'accès à partir de la valeur et de la clé.
Il y a trois manières d'accéder aux valeurs de nemaedtuple ().
- Accès par index
- Accès par clé
- Accès par la méthode getattr ()
Exemple 1
import collections Employee = collections.namedtuple(‘Employee’, (‘name’, ‘ID’, ‘Title’)) Emp = Employee(‘John’, ‘23567’, ‘Software Engineer’) #Accessing using index print(“Employee name is:”, Emp(0)) # Accessing using key print(“Employee ID is:”, Emp.ID) #Access by getattr() method print(“Employee Title is:”, getattr(Emp, ‘Title’))
Production:
Le nom de l'employé est: John
L'ID d'employé est: 23567
Le titre de l'employé est: Ingénieur logiciel
Nous avons également trois opérations de conversion prises en charge pour la fonction namedtuples ().
- _Fabriquer()
- _asdict ()
- ** Opérateur (Double start)
Exemple: 2
import collections Employee = collections.namedtuple(‘Employee’, (‘name’, ‘ID’, ‘Title’)) Emp = Employee(‘John’, ‘23567’, ‘Software Engineer’) Emp1 = (‘Mathew’, ‘45783’, “Software Developer”) Emp2 = {‘name’ : “Helen”, ‘ID’ : 56873, ‘Title’ : “Test Lead”} #Using _make() print(Employee._make(Emp1)) #Using _asdict() print(Emp._asdict()) #Using ** operator print(Employee(**Emp2))
Production:
Employé (nom = 'Mathew', ID = '45783', Title = 'Software Developer')
OrderedDict (((‘name’, ‘John’), (‘ID’, ‘23567’), (‘Title’, ‘Software Engineer’)))
Employé (nom = 'Helen', ID = 56873, titre = 'Test Lead')
Tuple de retour
Nous pouvons renvoyer la collection de valeurs ou de tuples à l'aide de l'instruction return.
Exemple 1
def my_fun(): name = “John” ID = 23567 Title = “Software Engineer” return (name, ID, Title) employee = my_fun() print(“Employee detail is:”, employee)
Production:
Les coordonnées de l’employé sont: («John», 23567, «Software Engineer»)
Index de tuple hors de portée
L'index hors de portée est l'une des exceptions courantes que nous obtiendrons en travaillant avec des tuples ou une liste. Cette exception se produit généralement lorsque vous essayez d'accéder à un élément en dehors du tuple, range, ce qui signifie que si les tuples ne contiennent que 3 éléments, et si vous essayez d'accéder au 4eélément alors il obtiendra l'index de tuple hors de l'exception de plage.
Exemple 1
Tuple = (4, 7, 1.2, “Hi”) print(Tuple(4))
Production:
Traceback (dernier appel le plus récent):
Fichier '', ligne 1, dans
Tuple (4)
IndexError: index de tuple hors de portée
Si vous observez dans l'exemple ci-dessus, nous essayons d'accéder à l'élément présent au 5eposition, mais il n'y a aucun élément présent là-bas, donc il jette l'index de tuple hors de la plage d'exception.
Suppression du tuple
Nous ne pouvons pas supprimer des éléments individuels du tuple car les tuples sont immuables. La seule façon de supprimer les éléments du tuple est de supprimer le tuple entier.
Python fournit une fonction intégrée «del» pour supprimer tout le tuple.
Exemple 1
Tuple = (2, 4.5, “Python”) print(“Before deleting the tuple:”, Tuple) del Tuple print(“After Deleting the tuple:”, Tuple)
Production:
Avant de supprimer le tuple: (2, 4.5, «Python»)
Traceback (dernier appel le plus récent):
Fichier '', ligne 1, dans
print («Après la suppression du tuple:», Tuple)
NameError: le nom «Tuple» n’est pas défini
Dans l'exemple ci-dessus, après avoir supprimé le tuple, nous essayons d'imprimer le tuple, mais il n'existe plus. Par conséquent, il lance NameError.
Opérations de base sur les tuples
En utilisant des tuples, nous pouvons effectuer certaines opérations de base comme la concaténation, la répétition, etc.
Voyons toutes les opérations de base avec quelques exemples.
Exemple: 1 - Concaténation de tuples
Nous pouvons concaténer les tuples en utilisant l’opérateur «+».
Tuple1 = (3, 5, “Hi”) Tuple2 = (5.6, 1, “Python”) print(“Tuple 1 is:”, Tuple1) print(“Tuple 2 is”, Tuple2) print(“Concatenation of Tuple 1 and Tuple 2 is:”, Tuple1+Tuple2)
Production:
Tuple 1 est: (3, 5, «Salut»)
Le tuple 2 est: (5.6, 1, «Python»)
La concaténation de Tuple 1 et Tuple 2 est: (3, 5, «Hi», 5.6, 1, «Python»)
Exemple: 2 - Répétition de tuples
La répétition de tuples signifie répéter les éléments des tuples plusieurs fois. Ceci peut être réalisé à l’aide de l’opérateur «*».
Tuple = (3, 1, 5.6, “Python”) print(“Before the repetition the tuple is:”, Tuple) print(“After the repetition the tuple is:”, Tuple*3)
Production:
Questions d'entretien sur les services Web .net
Avant la répétition, le tuple est: (3, 1, 5.6, «Python»)
Après la répétition, le tuple est: (3, 1, 5.6, «Python», 3, 1, 5.6, «Python», 3, 1, 5.6, «Python»)
Exemple: 3 - Opérateur d'adhésion
En utilisant l’opérateur ‘in’, nous pouvons vérifier si un élément particulier est présent dans le tuple. Il renvoie la valeur booléenne True si l'élément est présent dans le tuple et renvoie False si l'élément n'est pas présent.
Tuple = (3, 2, 6) print(“Is element 2 present in Tuple:”, 2 in Tuple)
Production:
L'élément 2 est-il présent dans Tuple: True
Méthodes de tuples intégrées
Python fournit quelques méthodes intégrées pour les tuples, comme décrit dans le tableau ci-dessous.
Méthodes | Description |
---|---|
tout() | Renvoie True si un élément est présent dans un tuple et renvoie False si le tuple est vide |
min () | Renvoie le plus petit élément (entier) du tuple |
max () | Renvoie le plus grand élément (entier) du tuple |
len () | Renvoie la longueur du tuple |
trié () | Utilisé pour trier tous les éléments du Tuple |
somme() | Renvoie la somme de tous les éléments (entiers) des tuples |
Voyons comment utiliser toutes les méthodes avec un exemple.
Exemple: 1 - méthode any ()
Tuple = (3, 1, 4.5) print(“Is there any elements present in Tuple:”, any(Tuple)) Tuple1 = () print(“Is there any elements present in Tuple1:”, any(Tuple1))
Production:
Y a-t-il des éléments présents dans Tuple: True
Y a-t-il des éléments présents dans Tuple1: False
Exemple: méthode 2 - min ()
Tuple = (3, 5.6, 5, 8) print(“Smallest element in the tuples is:”, min(Tuple))
Production:
Le plus petit élément des tuples est: 3
Exemple: 3 - méthode max ()
Tuple = (3, 5.6, 5, 8) print(“Largest element in the tuples is:”, max(Tuple))
Production:
Le plus grand élément des tuples est: 8
Exemple: 4 - méthode len ()
Tuple = (3, 5.6, 5, 8) print(“Length of the tuple is:”, len(Tuple))
Production:
La longueur du tuple est: 4
Exemple: 5 - méthode sorted ()
Tuple = (2, 3.5, 1, 6, 4) print(“Sorted integer is:”, sorted(Tuple)) Tuple1 = (‘e’, ‘a’, ‘u’, ‘o’, ‘i’) print(“Sorted character is:”, sorted(Tuple1))
Production:
L'entier trié est: (1, 2, 3,5, 4, 6)
Le caractère trié est: ('a', 'e', 'i', 'o', 'u')
Exemple: 6 - méthode sum ()
Num = (3, 5.1, 2, 9, 3.5) print('Sum of all the numbers in the tuples is:', sum(Num))
Production:
La somme de tous les nombres dans les tuples est: 22,6
Conclusion
Un tuple est l'un des types de données en Python, également appelé structure de données.
Un tuple Python est utilisé pour stocker un grand nombre de valeurs de n'importe quel type de données dans une seule variable. Les tuples sont immuables, ce qui améliore les performances d'accès aux valeurs à partir du tuple.
Lorsque vous travaillez avec des tuples, il est obligatoire de se souvenir de toutes les méthodes intégrées de tuples.
J'espère que vous auriez acquis d'immenses connaissances sur le concept de Tuple en Python !!
lecture recommandée
- Tutoriel Python DateTime avec des exemples
- Tutoriel Python pour les débutants (formation pratique gratuite sur Python)
- Tutoriel sur les fonctions principales de Python avec des exemples pratiques
- Tutoriels Eclipse détaillés pour les débutants
- Fonctions de chaîne Python
- Tutoriel Python String Split
- Tutoriel JAVA pour les débutants: plus de 100 tutoriels vidéo Java pratiques
- Variables Python