Este proyecto es una compilación de soluciones a retos prácticos de programación en Python, enfocados en la manipulación avanzada de estructuras de datos. A través de distintos módulos, se resuelven problemas del mundo real como gestión de inventarios, análisis de ventas regionales, sistemas de recomendación de películas y optimización de datos mediante comprehensions.
Durante el desarrollo de estos retos, se profundizaron los siguientes conceptos:
- Listas Dinámicas: Gestión de inventarios con operaciones CRUD.
- Tuplas Inmutables: Creación de catálogos protegidos y desempaquetado de datos.
- Diccionarios Anidados: Estructuración de datos complejos y análisis estadístico por regiones.
- Sets (Conjuntos): Lógica matemática para comparar inventarios entre tiendas y preferencias de usuarios.
- Comprehensions: Optimización de código mediante List, Dict y Set Comprehensions para filtrado y transformación de datos en una sola línea.
Se implementó un sistema para actualizar precios, registrar ventas con validación de stock y añadir nuevos productos dinámicamente.
Uso de tuplas para mantener la integridad de un catálogo de cine, incluyendo búsqueda por director y cálculo de promedios de puntuación.
Procesamiento de ventas trimestrales por región, calculando la participación porcentual de cada zona sobre el total global.
Uso de operadores de conjuntos (&, |, -, ^) para encontrar productos comunes entre sucursales y géneros afines entre usuarios.
Transformación de un dataset de ventas para extraer rankings premium y categorías únicas de forma eficiente.
Nota: Para que las imágenes se vean, asegúrate de que los archivos de imagen estén en la misma carpeta que este README.
| Módulo | Captura de Pantalla |
|---|---|
| Módulo de Tuplas | ![]() |
| Módulo de Diccionarios | ![]() |
| Módulo de Conjuntos | ![]() |
| Módulo de Comprehensions | ![]() |
| Módulo de Inventario | ![]() |
Este conjunto de retos me permitió pasar de entender la teoría de las estructuras de datos a aplicarlas en contextos lógicos funcionales. Aprendí que la elección de la estructura correcta (como un set para unicidad o un dict para acceso rápido) cambia drásticamente la eficiencia y legibilidad del código. La herramienta más potente que descubrí fueron las comprehensions, ya que permiten escribir lógica compleja de una manera muy limpia y profesional.




