Les p-uplet
Définition
Un p-uplet (ou tuple en anglais) est une collection ordonnée d'éléments, appelés composantes ou termes. Chaque terme peut être de n'importe quel type.
Le p-uplet est de type tuple
.
Les termes du p-uplet ne sont pas modifiables par affectation.
Un tuple
est non-mutable
Création d'un p-uplet
En langage Python, les termes d'un p-uplet sont séparés par des virgules. Les parenthèses ne sont pas obligatoires mais sont fortement conseillées pour la lisibilité du code.
Exemples:
t = (1, 8, 5)
print(type(t)) # <class 'tuple'>
# ou bien, mais fortement déconseillé. Mis ici en exemple car cela arrive dans certains codes...
t = 1, 8, 5
Indexation des éléments du p-uplet
L'indexation fonctionne exactement comme avec les listes.
pointA = (3, -4)
pointA[0] # 3
pointA[1] # -4
Modification d'un p-uplet
Il n'est pas possible de modifier par affectation les termes d'un p-uplet après sa création.
Un p-uplet est dit non-mutable
t= (1, 2, 8)
t[0] = 12 # TypeError: 'tuple' object does not support item assignment
Fonction renvoyant un p-uplet de valeurs
En programmation fonctionnelle, il est indispensable d'utiliser des fonctions pouvant renvoyer un ensemble de valeurs réutilisables, contenus dans un p-uplet ou une liste.
Par exemple, on souhaite calculer les coordonnées du milieu I d'un segment [AB]:
def milieu(A, B):
xI = (A[0]+B[0])/2
yI = (A[1]+B[1])/2
return (xI, yI)
A = (2, 1)
B = (3, 5)
I = milieu(A, B)
print(I) # (2.5, 3.0)