Saltar al contenido
Logotipo de Trainontech Trainontech

Lenguajes y Fundamentos de Programación · PY-102

Estructuras de datos en Python

Listas, tuplas, diccionarios y conjuntos: qué estructura elegir y qué coste tiene equivocarse.

Disponible Iniciación 7 módulos · 33 clases

Formato asíncrono Desarrollo, Alumnado Python

Lo que aprenderás

  • Elegir entre lista, tupla, diccionario y conjunto según el acceso y la mutabilidad que exige el problema
  • Manipular listas con indexación, rebanadas, ordenación con clave y métodos de inserción y borrado
  • Construir diccionarios anidados para representar registros y recorrerlos con items y get
  • Aplicar conjuntos para eliminar duplicados y calcular uniones, intersecciones y diferencias
  • Escribir comprensiones de lista y de diccionario que sustituyan bucles de varias líneas
  • Reconocer el efecto de la copia superficial y usar copy y deepcopy cuando corresponde
  • Estimar el coste de una búsqueda en lista frente a una búsqueda en diccionario

Contenido del curso

7 módulos · 33 clases en vídeo · práctica guiada en cada módulo

Módulo 1 · Punto de partida 4 clases
  • Por qué la estructura de datos decide el rendimiento
  • Repaso rápido de tipos básicos y de bucles
  • Mutable frente a inmutable
  • Preparación del entorno y de los ficheros de ejemplo
Módulo 2 · Listas 6 clases
  • Creación, indexación y rebanadas
  • Añadir, insertar, extraer y eliminar elementos
  • Ordenar con sort, sorted y el parámetro key
  • Listas de listas y matrices sencillas
  • Copia superficial, copia profunda y alias
  • Ejercicio: tratamiento de una serie de lecturas
Módulo 3 · Tuplas y desempaquetado 4 clases
  • Cuándo una tupla comunica mejor la intención
  • Desempaquetado múltiple y en bucles
  • Tuplas como clave de diccionario
  • namedtuple para registros legibles
Módulo 4 · Diccionarios 6 clases
  • Claves, valores y acceso con get
  • Recorridos con keys, values e items
  • Diccionarios anidados para representar registros
  • Recuento y agrupación por clave
  • defaultdict y Counter
  • Ejercicio: resumen por categoría de un conjunto de registros
Módulo 5 · Conjuntos 5 clases
  • Eliminar duplicados sin bucles
  • Unión, intersección y diferencia
  • Pertenencia y coste de la búsqueda
  • Conjuntos inmutables con frozenset
  • Ejercicio: comparación de dos listados de referencias
Módulo 6 · Comprensiones y funciones auxiliares 4 clases
  • Comprensión de lista con filtro y transformación
  • Comprensiones de diccionario y de conjunto
  • zip, enumerate y any/all
  • Cuándo una comprensión deja de ser legible
Módulo 7 · Proyecto de cierre 4 clases
  • Enunciado: consolidar tres listados con duplicados y campos incompletos
  • Elección justificada de estructuras
  • Implementación y comprobación de resultados
  • Comparación de una versión lenta y una rápida

Requisitos

  • Haber programado en Python a nivel de variables, condicionales, bucles y funciones
  • Saber ejecutar un cuaderno o un script en el propio equipo
  • No se necesita ningún conocimiento previo de algoritmia formal

Descripción

Un programa que funciona con diez elementos puede volverse inservible con cien mil, y casi siempre el motivo es la estructura de datos elegida. Buscar dentro de una lista en cada vuelta de un bucle, duplicar información por no usar un conjunto o modificar sin querer una lista compartida son errores que no dan mensaje de error: dan resultados lentos o silenciosamente equivocados.

El curso recorre las cuatro estructuras básicas de Python con el criterio de un programador con oficio: qué operaciones son baratas, cuáles son caras, cuándo conviene la inmutabilidad y cómo se combinan para representar datos reales. Cada estructura se practica con casos de tratamiento de registros, recuentos, agrupaciones y deduplicación, y se comparan versiones lentas y rápidas del mismo programa.

Con esta base, el salto a ficheros, a bases de datos o a Pandas deja de ser un cambio de sintaxis y pasa a ser una extensión de lo mismo. También prepara para leer código ajeno, donde las comprensiones y los diccionarios anidados aparecen constantemente.

¿Para quién es este curso?

  • Personas que ya escriben Python básico y quieren dejar de resolverlo todo con listas y bucles anidados
  • Alumnado de ciclos superiores de Informática que prepara pruebas de programación con datos reales
  • Desarrolladores que llegan desde otro lenguaje y necesitan las estructuras idiomáticas de Python
Disponible

Contenido ya grabado y publicado en el campus. Puedes empezar en cuanto te inscribas.

Código
PY-102
Nivel
Iniciación
Público
Desarrollo, Alumnado
Entorno
Python

Este curso incluye

  • 33 clases en vídeo bajo demanda
  • Práctica en entornos web y simuladores, sin instalar nada
  • Tutorización en el campus
  • Acceso desde móvil, tableta y ordenador
  • Actualizaciones cuando cambia la versión de la herramienta
  • Certificado de finalización

Sigue aprendiendo

Cursos relacionados

PY-101Lenguajes y Fundamentos de Programación

Python desde cero

Variables, tipos, operadores, condicionales, bucles y funciones con práctica continua en cuaderno.

PythonGoogle Colab

Iniciación 42 clases

Bajo demanda

DEV-101Lenguajes y Fundamentos de Programación

Git y GitHub para equipos técnicos

Ramas, revisiones y resolución de conflictos con un flujo de trabajo que un equipo puede sostener.

Git

Iniciación 34 clases

Bajo demanda

DEV-108Lenguajes y Fundamentos de Programación

Desarrollo sin instalación: Code-Server + Wokwi

Programar y simular electrónica desde un portátil de aula sin permisos de administrador.

Code-ServerWokwi

Iniciación 34 clases