Tuplas en Python: ordenadas, inmutables y con duplicados
Clase 23 de 32 • Curso de Fundamentos de Python
Resumen
Las tuplas en Python son una base sólida para escribir código claro y seguro. Aquí aprenderás, paso a paso, cómo crear, acceder y operar con tuplas: colecciones ordenadas e inmutables que permiten elementos duplicados, admiten tipos mixtos y se pueden desempaquetar, concatenar, multiplicar e iterar. Además, verás el truco para “modificarlas” convirtiéndolas en lista y de vuelta a tupla.
¿Qué es una tupla y cómo se crea en Python?
Una tupla es una colección ordenada e inmutable. Ordenada significa que cada elemento tiene un índice (comienza en 0). Inmutable implica que no puedes cambiar, agregar ni eliminar elementos directamente.
¿Cómo declarar y acceder por índice?
- Usa paréntesis y separa con comas.
- Accede por índice con corchetes.
- Usa print para ver resultados.
tecnologias = ("Python", "JavaScript", "Go")
print(tecnologias) # ('Python', 'JavaScript', 'Go')
print(tecnologias[1]) # 'JavaScript'
¿Se permiten duplicados y cómo contar elementos?
- Las tuplas aceptan duplicados sin problema.
- Usa len para contar elementos.
tecnologias = ("Python", "JavaScript", "Go", "Python")
print(len(tecnologias)) # 4
¿Cómo trabajar con tipos y tuplas de un solo elemento?
Las tuplas aceptan distintos tipos de datos en la misma colección. Con type puedes comprobar el tipo. Ojo con las tuplas de un solo elemento: requieren una coma final para que Python no las interprete como string.
¿Qué pasa con el tipo al usar un solo elemento?
- Sin coma final: es string.
- Con coma final: es tuple.
tecnologias = ("Python", "JavaScript", "Go")
print(type(tecnologias)) #
fruta = ("manzana")
print(type(fruta)) #
fruta = ("manzana",)
print(type(fruta)) #
¿Se pueden mezclar tipos en una tupla?
- Sí: texto, números y booleanos juntos.
- Mantiene su tipo tuple.
tupla = ("Python", 5, True)
print(tupla) # ('Python', 5, True)
print(type(tupla)) #
¿Cómo desempaquetar, combinar, multiplicar e iterar tuplas?
Estas operaciones amplían tu manejo de tuplas sin romper su inmutabilidad: desempaquetar asigna elementos a variables, concatenar une colecciones, multiplicar repite elementos y el bucle for recorre uno a uno.
¿Cómo desempaquetar en variables?
- Asigna cada posición a una variable.
- Útil para código legible y directo.
tupla = ("Python", 5, True)
x, y, z = tupla
print(x, y, z) # Python 5 True
¿Cómo concatenar y duplicar elementos?
- Con el operador + se concatenan tuplas.
- Con * * 2 se multiplican (repiten sus elementos).
- Los duplicados se mantienen.
tupla1 = (1, 2, 3)
tupla2 = (3, 4, 5)
tupla3 = tupla1 + tupla2
print(tupla3) # (1, 2, 3, 3, 4, 5)
print(tupla * 2) # ('Python', 5, True, 'Python', 5, True)
¿Cómo recorrer y cómo “modificar” con el truco?
- Recorre con for para procesar cada ítem.
- Truco para “modificar”: convierte a lista, usa append, y vuelve a tupla (casting).
for item in tupla:
print(item)
tupla_a_modificar = ("Python", "JavaScript", "Go")
lista_comodin = list(tupla_a_modificar) # casting a lista
lista_comodin.append("React JS") # modificar con append
tupla_a_modificar = tuple(lista_comodin) # volver a tupla
print(tupla_a_modificar) # ('Python', 'JavaScript', 'Go', 'React JS')
¿Te quedó alguna duda sobre índices, desempaquetado o el truco de lista a tupla? Comparte tu pregunta o ejemplo en los comentarios y seguimos practicando juntos.