Contenido
Las colecciones en Python son estructuras de datos diseñadas para almacenar grupos de información y manipularlos de forma eficiente. Son el equivalente a cajas especializadas: algunas mantienen el orden, otras eliminan duplicados, otras asocian claves con valores.
Python ofrece cuatro colecciones fundamentales:
- Listas (list) → secuencias ordenadas y modificables
- Tuplas (tuple) → secuencias ordenadas e inmutables
- Conjuntos (set) → colecciones sin duplicados
- Diccionarios (dict) → pares clave-valor
Elegir bien la colección correcta es una habilidad esencial. No es solo sintaxis: es pensamiento estructurado.
Listas (list)
Una lista es una colección ordenada y modificable que permite duplicados.
- Mantienen el orden de inserción
- Son mutables (se pueden modificar)
- Permiten duplicados
- Admiten cualquier tipo de dato
Crear y usar listas
mi_lista = [1, 2, 3, 4, 5]print(mi_lista[0]) # 1
print(mi_lista[-1]) # 5
Modificar elementos
mi_lista[1] = 10
print(mi_lista)
Añadir elementos
mi_lista.append(6) # Añade al final
mi_lista.insert(0, 99) # Inserta en posición
Eliminar elementos
mi_lista.remove(10) # Elimina por valor
mi_lista.pop() # Elimina último
del mi_lista[0] # Elimina por índice
Slicing (rebanado)
numeros = [10,20,30,40,50]print(numeros[1:4]) # [20,30,40]
print(numeros[:3]) # [10,20,30]
print(numeros[::2]) # [10,30,50]
List Comprehension (forma elegante)
cuadrados = [x**2 for x in range(6)]
print(cuadrados)
Tuplas (tuple)
Una tupla es una colección ordenada e inmutable. Una vez creada, no cambia.
- Ordenadas
- Inmutables
- Permiten duplicados
- Más eficientes y seguras que listas
Uso típico: datos constantes
coordenadas = (10.0, 20.0)
print(coordenadas[0])
Desempaquetado
x, y = coordenadas
print(x, y)
Tupla de un solo elemento (detalle raro)
t = (5,) # sin coma NO es tupla
Conjuntos (set)
Un set es una colección sin orden y sin duplicados. Perfecta para matemáticas y limpieza de datos.
- No ordenados
- No permiten duplicados
- Mutables
- Muy rápidos en búsquedas
Crear y usar sets
s = {1,2,3,4}
s.add(5)
s.remove(2)
Operaciones matemáticas
a = {1,2,3}
b = {2,3,4}print(a | b) # Unión
print(a & b) # Intersección
print(a - b) # Diferencia
print(a ^ b) # Diferencia simétrica
Eliminar duplicados manteniendo orden
lista = [1,2,2,3,4,4,5]
sin_dup = list(dict.fromkeys(lista))
print(sin_dup)
Diccionarios (dict)
Un diccionario almacena pares clave → valor. Es como una base de datos en miniatura.
- Acceso por clave
- Mutables
- Claves únicas
- Muy rápidos
Crear diccionario
persona = {
"nombre": "Juan",
"edad": 25,
"ciudad": "Madrid"
}
Acceder
print(persona["nombre"])
print(persona.get("edad"))
Modificar / Añadir
persona["edad"] = 26
persona["profesion"] = "Ingeniero"
Eliminar
persona.pop("ciudad")
del persona["edad"]
Recorrer diccionario
for clave, valor in persona.items():
print(clave, valor)
Operaciones comunes y trucos reales
Copia
a = [1,2,3]
b = a.copy() # copia independiente
Ordenar listas
nums = [5,2,8,1]
nums.sort()
print(nums)ordenados = sorted(nums, reverse=True)
Comprobar pertenencia
if 3 in nums:
print("Existe")
Longitud
len(nums)
Comparación de colecciones
| Colección | Ordenada | Mutable | Duplicados | Uso típico |
|---|---|---|---|---|
| Lista | Sí | Sí | Sí | Secuencias generales |
| Tupla | Sí | No | Sí | Datos constantes |
| Set | No | Sí | No | Eliminar duplicados |
| Dict | Sí* | Sí | Claves únicas | Asociación clave-valor |
*Desde Python 3.7 mantienen orden de inserción.
Ejemplos guiados
Acceder al tercer elemento
numeros = [10,20,30,40,50]
tercer = numeros[2]
print(tercer)
Último elemento de una tupla
colores = ("rojo","verde","azul")
print(colores[-1])
Eliminar duplicados
nums = [1,2,2,3,4,4,5]
print(list(set(nums)))
Añadir clave a diccionario
persona = {"nombre":"Ana","edad":30}
persona["ciudad"] = "Barcelona"
print(persona)
Ejercicios
Listas
- Crea una lista del 1 al 5 y muestra primero y último.
- Cambia «pera» por «uva» en
["manzana","pera","naranja"]. - Añade tres números a
[10,20,30].
Tuplas
- Crea tupla con tres ciudades.
- Extrae el segundo valor de
(100,200,300). - Crea tupla vacía y explica cómo añadir valores.
Sets
- Crea
{1,2,3}y añade4. - Comprueba si
5está en{1,2,3,4}. - Intersección
{1,2,3}y{2,3,4}.
Diccionarios
- Crea diccionario con nombre, edad y ciudad.
- Cambia un valor.
- Elimina una clave.










