Python - Lección 8: Secuencias (tuplas)

Secuencias (tuplas).

Las tuplas son secuencias muy similares a las listas, con la diferencia de que son inmutables. Esto quiere decir que una vez creadas, no pueden añadirse elementos, removerse o modificarse de cualquier manera. Esto suele utilizarse cuando se quiere evitar perder los valores originales. Se pueden crear listas en base a tuplas o desempaquetar las tuplas en variables individuales para trabajar con los datos.

Para declarar una tupla, es muy similar a una lista, sólo que en lugar de utilizar llaves cuadradas, utilizaremos paréntesis para especificar los valores de la misma:

autos = ('Toyota Corolla', 'Subaru Impresa', 'Nissan 370z')
print(f'{autos}')

tuplas01

tuplas02

Si queremos colocar a cada elemento de una tupla en variables distintas, se puede utilizar el recurso del desempaquetado de tuplas de la siguiente manera:

autos = ('Toyota Corolla', 'Subaru Impresa', 'Nissan 370z')

autos_1, autos_2, autos_3 = autos

print(f'Auto 1: {autos_1}\nAuto 2: {autos_2}\nAuto 3: {autos_3}')

tuplas03

tuplas04

NOTA: Se pueden realizar saltos de línea a la hora de imprimir por pantalla escribiendo \n donde queremos que se produzca el mismo.

Con la función zip() podemos combinar tuplas, creando un iterador de las mismas en donde cada elemento de cada secuencia contiene al elemento en la misma posición de la segunda tupla.

autos = ('Corolla', 'Impresa', '370z')
fabricantes = ('Toyota', 'Subaru', 'Nissan')

zip(autos, fabricantes)

print('Imprimiendo iterador zip: \n')
print(list (zip (autos, fabricantes)))

tuplas05

tuplas06

Utilizando la función set() podremos agrupar valores duplicados dentro de las tuplas:

autos = ('C4', 'EVO IX', 'Corolla', 'Impresa', 'El Camino', 'C4', '370z', 'EVO X')

set(autos)

print("Valores agrupados con set: \n")
print(set (autos))

tuplas08

Para imprimir elementos de una tupla según su índice o especificar un rango de elementos a imprimir, descubrirán que funciona de manera idéntica a una lista:

tupla1 = (1, 2, 3, 4, 5, 6, 7, 8, 9)

print (tupla1[0])
print (f'\n{tupla1[0:4]}')

Y para finalizar, podemos buscar el índice o la cantidad de coincidencias de un elemento de la lista, si lo especificamos:

autos = ('C4', 'EVO IX', 'Corolla', 'Impresa', 'El Camino', 'C4', '370z', 'EVO X')

print(autos.index('C4'))
print(f'Cantidad de coincidencias: {autos.count('C4')}')

tuplas10

tuplas11

Antes de pasar al tema de “Diccionarios”, vamos a hacer un poco de ejercitación con los nuevos temas.

<Tema anterior - Siguiente tema>