Tuples en Python
Una tuple és una estructura de dades que ens permet guardar diversos valors dins d’una mateixa variable, igual que les llistes.
La diferència més important és esta:
Una tuple no es pot modificar després de crear-la.
És a dir, és immutable.
Crear una tuple
Una tuple es crea amb parèntesis () i separant els elements amb comes.
numeros = (3, 7, 10, 5)
paraules = ("hola", "adéu", "python")
També pot contindre diferents tipus de dades:
dades = (1, "hola", 3)
Tuple amb un sol element
Atenció amb este cas:
t = (5)
Açò no és una tuple, és un número.
Per crear una tuple d’un sol element, cal posar una coma:
t = (5,)
Accedir als elements d’una tuple
Igual que les llistes, cada element té un índex.
Els índexs:
- comencen en 0
- augmenten d’un en un
numeros = (10, 20, 30)
print(numeros[0]) # mostra 10
print(numeros[1]) # mostra 20
print(numeros[2]) # mostra 30
No es poden modificar
Si intentem canviar un valor, dona error.
numeros = (5, 8, 2)
numeros[1] = 10 # error
Les tuples són immutables.
Longitud d’una tuple
Per saber quants elements té, utilitzem len().
numeros = (4, 6, 9)
print(len(numeros))
Resultat:
3
Recórrer una tuple amb for
Igual que amb les llistes.
Recórrer pels valors
numeros = (2, 4, 6, 8)
for num in numeros:
print(num)
Recórrer pels índexs
numeros = (2, 4, 6, 8)
for i in range(len(numeros)):
print(numeros[i])
Per a què s’utilitzen les tuples?
Les tuples s’utilitzen quan:
- No volem que les dades es modifiquen.
- Volem representar dades fixes (coordenades, dies de la setmana, etc.).
Exemple:
coordenades = (10, 20)
dies = ("dilluns", "dimarts", "dimecres", "dijous", "divendres")
Desempaquetar una tuple
Podem guardar els valors en diferents variables al mateix temps.
coordenades = (10, 20)
x, y = coordenades
print(x)
print(y)
Tuple amb dades introduïdes per l’usuari
Com que no es poden modificar, normalment:
- Guardem dades en una llista.
- La convertim a tuple.
numeros = []
for i in range(3):
num = int(input("Introdueix un número: "))
numeros.append(num)
t = tuple(numeros)
print(t)
Errors típics amb tuples
Intentar modificar un element
t = (1, 2, 3)
t[0] = 5 # error
Les tuples no es poden canviar.
Oblidar la coma en una tuple d’un element
t = (7)
Açò no és una tuple.
Correcte:
t = (7,)
Resum
- Una tuple guarda diversos valors en una sola variable.
- Es crea amb
(). - Els elements tenen índexs que comencen en 0.
len()indica quants elements té.- No es poden modificar (són immutables).
- Es poden recórrer amb
for. - S’utilitzen per a dades fixes que no han de canviar.