Listas, diccionarios y tuplas
Las colecciones guardan varios valores. Elegir bien la estructura evita mucho codigo torcido.
Una lista mantiene orden y se puede modificar.
tareas = ["leer", "practicar", "descansar"]
tareas.append("repasar")
print(tareas)print(tareas[0])print(len(tareas))Salida:
['leer', 'practicar', 'descansar', 'repasar']leer4| Operacion | Devuelve |
|---|---|
tareas[0] | "leer" |
len(tareas) | 4 |
tareas.append("repasar") | None |
"leer" in tareas | True |
Diccionarios
Sección titulada «Diccionarios»Un diccionario guarda pares clave-valor.
usuario = { "nombre": "Sofia", "edad": 31, "activo": True,}
print(usuario["nombre"])print(usuario.get("email", "sin email"))Salida:
Sofiasin emailAgregar y actualizar
Sección titulada «Agregar y actualizar»usuario["email"] = "sofia@example.com"usuario["edad"] = 32
print(usuario)Salida aproximada:
{'nombre': 'Sofia', 'edad': 32, 'activo': True, 'email': 'sofia@example.com'}Recorrer diccionarios
Sección titulada «Recorrer diccionarios»for clave, valor in usuario.items(): print(f"{clave}: {valor}")Salida:
nombre: Sofiaedad: 32activo: Trueemail: sofia@example.comUna tupla mantiene orden y no se modifica. Sirve para datos que van juntos.
coordenada = (-34.9, -56.2)
latitud, longitud = coordenada
print(latitud)print(longitud)Salida:
-34.9-56.2Un set guarda valores unicos.
etiquetas = {"python", "web", "python", "datos"}
print(etiquetas)print("web" in etiquetas)Salida posible:
{'datos', 'python', 'web'}TrueEl orden puede cambiar, porque un set no esta pensado para posiciones.
Comprensiones de listas
Sección titulada «Comprensiones de listas»numeros = [1, 2, 3, 4, 5]cuadrados = [numero ** 2 for numero in numeros]pares = [numero for numero in numeros if numero % 2 == 0]
print(cuadrados)print(pares)Salida:
[1, 4, 9, 16, 25][2, 4]Que elegir
Sección titulada «Que elegir»| Necesitas | Usa |
|---|---|
| Orden y cambios | list |
| Claves con valores | dict |
| Datos fijos agrupados | tuple |
| Valores unicos | set |
Practica
Sección titulada «Practica»def contar_categorias(productos): conteo = {}
for producto in productos: categoria = producto["categoria"] conteo[categoria] = conteo.get(categoria, 0) + 1
return conteo
productos = [ {"nombre": "Mouse", "categoria": "hardware"}, {"nombre": "Teclado", "categoria": "hardware"}, {"nombre": "Python 101", "categoria": "libro"},]
print(contar_categorias(productos))Salida:
{'hardware': 2, 'libro': 1}Retorno: contar_categorias(productos) devuelve un dict.