Python Tuple

Les tuples de Python sont similaires aux listes, sauf que les éléments d’un tuple ne peuvent pas être modifiés.

Les tuples utilisent des parenthèses, les listes utilisent des crochets.

Créer un tuple est simple : il suffit d’ajouter des éléments entre parenthèses, séparés par des virgules.

Comme dans l'exemple suivant :

Exemples (Python 2.0+)

tup1 = ('physics', 'chemistry', 1997, 2000) tup2 = (1, 2, 3, 4, 5 ) tup3 = "a", "b", "c", "d"

Créer un tuple vide

tup1 = ()

Lorsqu’un tuple ne contient qu’un seul élément, vous devez ajouter une virgule après l’élément.

tup1 = (50,)

Les tuples sont similaires aux chaînes de caractères : l’indexation commence à 0, et ils peuvent être découpés, concaténés, etc.


Accéder aux tuples

Les tuples peuvent utiliser des indices pour accéder aux valeurs du tuple, comme dans l’exemple suivant :

Exemples (Python 2.0+)

#!/usr/bin/python tup1 = ('physics', 'chemistry', 1997, 2000) tup2 = (1, 2, 3, 4, 5, 6, 7 ) print "tup1[0]: ", tup1[0] print "tup2[1:5]: ", tup2[1:5]

La sortie de l'exemple ci-dessus est :

tup1[0]:  physics
tup2[1:5]:  (2, 3, 4, 5)

Modifier les tuples

Les valeurs des éléments d'un tuple ne peuvent pas être modifiées, mais nous pouvons concaténer et combiner des tuples, comme dans l'exemple suivant :

Exemples (Python 2.0+)

#!/usr/bin/python # -*- coding: UTF-8 -*- tup1 = (12, 34.56) tup2 = ('abc', 'xyz') # L'opération suivante consistant à modifier les éléments d'un tuple est illégale. # tup1[0] = 100 # Créer un nouveau tuple tup3 = tup1 + tup2 print tup3

La sortie de l'exemple ci-dessus est :

(12, 34.56, 'abc', 'xyz')

Supprimer les tuples

Les valeurs des éléments d'un tuple ne peuvent pas être supprimées, mais nous pouvons utiliser l'instruction del pour supprimer le tuple entier, comme dans l'exemple suivant :

Exemples (Python 2.0+)

#!/usr/bin/python tup = ('physics', 'chemistry', 1997, 2000) print tup del tup print "Après suppression de tup : " print tup

Après la suppression du tuple dans l'exemple ci-dessus, l'affichage de la variable produira un message d'exception, comme indiqué ci-dessous :

('physics', 'chemistry', 1997, 2000)
After deleting tup :
Traceback (most recent call last):
  File "test.py", line 9, in <module>
    print tup
NameError: name 'tup' is not defined

Opérateurs de tuples

Comme les chaînes de caractères, les tuples peuvent être manipulés avec les signes + et *. Cela signifie qu'ils peuvent être combinés et copiés, et l'opération produit un nouveau tuple.

Expression PythonRésultatDescription
len((1, 2, 3))3Compter le nombre d'éléments
(1, 2, 3) + (4, 5, 6)(1, 2, 3, 4, 5, 6)Concaténation
('Hi!',) * 4('Hi!', 'Hi!', 'Hi!', 'Hi!')Répétition
3 in (1, 2, 3)TrueVérifier si un élément existe
for x in (1, 2, 3): print x,1 2 3Itération

Indexation et découpage des tuples

Comme un tuple est aussi une séquence, nous pouvons accéder aux éléments à des positions spécifiques dans le tuple, et nous pouvons également découper un segment d'éléments dans l'index, comme montré ci-dessous :

Tuple :

L = ('spam', 'Spam', 'SPAM!')
Expression PythonRésultatDescription
L[2]'SPAM!'Lire le troisième élément
L[-2]'Spam'Lire en sens inverse, lire l'avant-dernier élément
L[1:]('Spam', 'SPAM!')Découper les éléments

Aucun délimiteur de fermeture

Tous les objets sans délimiteurs englobants, séparés par des virgules, correspondent par défaut à un tuple, comme dans l'exemple suivant :

Exemples (Python 2.0+)

#!/usr/bin/python print 'abc', -4.24e93, 18+6.6j, 'xyz' x, y = 1, 2 print "Valeur de x , y : ", x,y

Le résultat de l'exécution de l'exemple ci-dessus est :

abc -4.24e+93 (18+6.6j) xyz
Value of x , y : 1 2

Fonctions intégrées des tuples

Les tuples Python contiennent les fonctions intégrées suivantes :

Non.Méthode et description
1cmp(tuple1, tuple2)
Compare deux éléments de tuple.
2len(tuple)
Compte le nombre d'éléments dans un tuple.
3max(tuple)
Retourne la valeur maximale des éléments d'un tuple.
4min(tuple)
Retourne la valeur minimale des éléments d'un tuple.
5tuple(seq)
Convertit une liste en un tuple.
Autres extensions