🇺🇸 English · 🇧🇷 Português · 🇪🇸 Español
Usa esta página como el índice general del curso. Todos los capítulos de aprendizaje ya publicados tienen un enlace directo aquí, para que puedas avanzar por la guía sin necesidad de abrir primero el índice de cada sección.
Si empiezas desde cero, sigue el orden de las fases. Algunas fases posteriores pueden estar completadas antes que fases anteriores todavía planificadas, pero la numeración sigue representando la secuencia de aprendizaje recomendada.
- ✅ Disponible: publicado y revisado
- 🚧 En progreso: la fase ya comenzó, pero todavía no está completa
- ⏳ Planificado: aún no disponible como sección completa de aprendizaje
Abrir el índice de la sección Fundamentos
- Cómo Python ejecuta un programa
print()einput()- Variables y nombres
- Tipos de datos incorporados
type()eisinstance()- Conversión de tipos
Abrir el índice de la sección Textos y Números
- Creación e indexación de strings
- Métodos comunes de strings
int,floatybool- Funciones numéricas incorporadas
Abrir el índice de la sección Colecciones
- Creación, indexación y slicing de listas
- Modificar listas y métodos comunes
- Tuplas e inmutabilidad
- Diccionarios: claves y valores
- Conjuntos y valores únicos
- Elegir la colección adecuada
Abrir el índice de la sección Flujo del Programa
- Condiciones, Comparaciones y Lógica Booleana
if,elifyelsematchycase: Coincidencia de Patrones Estructurales- Bucles
fore Iteración range(),enumerate()yzip()- Bucles
whiley Repetición Guiada por Estado break,continueyelsede Bucles- Elegir y Combinar el Flujo del Programa
La Fase 4 está completada con ocho capítulos revisados. La secuencia construye condiciones confiables, ramificación condicional, coincidencia de patrones estructurales, repetición guiada por iterables, ayudas de iteración, repetición guiada por estado, control deliberado de bucles y, finalmente, un modelo de decisión para elegir y combinar esas herramientas según la intención.
Abrir el índice de la sección Funciones
- Definir y Llamar Funciones
- Parámetros y Argumentos
- Valores de Retorno
- Alcance
- Type Hints
- Valores Predeterminados
*argsy**kwargs- Funciones Trabajando Juntas
- Flujo de Datos Entre Funciones
La Fase 5 está completada con nueve capítulos revisados. El Capítulo 01 establece definición frente a llamada, el Capítulo 02 añade entradas obligatorias mediante parámetros y argumentos, el Capítulo 03 completa el primer recorrido de entrada y salida con valores de retorno, el Capítulo 04 explica nombres locales y globales y búsqueda, el Capítulo 05 añade type hints de parámetros y retorno, anotaciones de colecciones, str | None y la diferencia entre información estática de tipos y enforcement en runtime, el Capítulo 06 añade valores predeterminados, reemplazos selectivos, evaluación al definir la función y manejo seguro de valores mutables con None, el Capítulo 07 añade recolección de cantidades variables de argumentos posicionales y por palabra clave con *args y **kwargs, sus modelos de tupla/diccionario, firmas mixtas simples, type hints para valores recogidos y el límite entre recolección en la definición y desempaquetado en la llamada, el Capítulo 08 compone funciones auxiliares y coordinadoras, pasa valores retornados entre pasos, mantiene explícitas las dependencias, combina funciones con condiciones y bucles e introduce grafos simples de llamadas, y el Capítulo 09 cierra la fase con seguimiento llamador-parámetro-retorno, vínculos locales, reasignación frente a mutación, resultados en tupla y None, pipelines explícitos y seguimientos de flujo de datos.
Esta fase ya está disponible y es la siguiente fase recomendada después de Funciones para quienes siguen el currículo desde cero.
Abrir el índice de la sección Comentarios y Documentación
- Comentarios en Python
- Docstrings en Python
- Nombres significativos y código autoexplicativo
- Marcadores de tareas y seguimiento técnico
- Comentarios frente a Logging en Python
- PEP 8 y legibilidad en Python
Abrir el índice de la sección Errores, Archivos y Módulos
- Manejo de Excepciones con
try,except,elseyfinally - Lanzar Excepciones y Crear Excepciones Personalizadas
- Abrir Archivos de Forma Segura con
open()ywith - Trabajar con TXT, CSV y JSON
- Organizar Código con Imports, Módulos y Paquetes
La Fase 7 está completada con cinco capítulos revisados. Los Capítulos 01–02 establecen manejo y señalización deliberada de excepciones. El Capítulo 03 añade un tiempo de vida seguro de archivos e I/O de texto. El Capítulo 04 añade límites de datos TXT, CSV y JSON. El Capítulo 05 cierra la fase con módulos, paquetes regulares, __name__, main guard, contexto de búsqueda de imports, imports absolutos y relativos, python -m y diseño de dependencias.
Abrir el índice de la sección Biblioteca Estándar
- Trabajar con Rutas del Sistema de Archivos Usando
pathlib - Trabajar con Fechas y Cálculos de Tiempo Usando
datetime - Controlando Contratos de Serialización y Decodificación JSON
- Controlando Dialectos CSV y Contratos de Texto Tabular
- Diseñando Pipelines de Logging y Contratos de Contexto en Runtime
- Contenedores Especializados y Contratos de Colecciones
- Diseñando Pipelines Lazy de Iteradores con
itertools - Diseñando Contratos de Precisión y Redondeo Decimal
- Diseñando Operaciones de Sistema Operativo y Archivos con
osyshutil
La Fase 8 está completada con nueve capítulos revisados. La secuencia avanza desde modelado de rutas por tiempo, formatos estructurados de datos, diagnóstico en runtime, contenedores especializados, iteración lazy, aritmética decimal y finalmente contratos del sistema operativo y filesystem. El Capítulo 09 cierra la fase con estado del entorno, fronteras path-like, exploración y recorrido deterministas, metadatos, comportamiento de copia/movimiento/eliminación, capacidades de plataforma y decisiones de seguridad para archives.
Abre el índice de la sección Bibliotecas Externas
- ✅
pandas: Trabajando con Datos Tabulares - ✅
openpyxl: Automatizando Libros de Excel - ✅
requests: Consumiendo APIs HTTP - ✅
pytest: Ingeniería de Pruebas Automatizadas
La Fase 9 está completada con cuatro capítulos revisados. La secuencia avanza desde contratos de datos tabulares por automatización de libros de Excel y clientes HTTP/API, y cierra con contratos de pruebas automatizadas en pytest 9.1.x: descubrimiento, assertions, parametrización, fixtures, recursos temporales, monkeypatching, captura, marks, aislamiento determinista y comportamiento en CI.
Abrir el índice de la sección Proyectos Prácticos
- ✅ Control de Gastos
- ✅ Calculadora de Notas
- ✅ Registro de Usuarios
- ✅ Analizador CSV
- ✅ Generador de Informes
- 🚧 Organizador de Archivos
- ⏳ Flujo Ficticio de Conciliación
- ⏳ Flujo Simulado de Automatización
La Fase 10 está en progreso. El Proyecto 01 integra modelado de datos validado, dinero exacto con Decimal, colecciones, persistencia JSON, exportación CSV, manejo determinista de archivos temporales y cobertura automatizada con pytest. El Proyecto 02 añade políticas de calificación configurables, agregación ponderada exacta, estado de progreso frente a final explícito, informe estructurado y pruebas centradas en límites. El Proyecto 03 añade datos de identidad canónicos, normalización Unicode e IDNA, prevención de duplicados, índices secundarios de lookup, actualizaciones seguras de campos indexados, transiciones explícitas del ciclo de vida y pruebas centradas en mutación sin introducir autenticación. El Proyecto 04 añade ingestión CSV consciente de schema, conversión tipada, diagnóstico de rechazos por fila, fallos estructurales, comprobación de identificadores duplicados, filtros deterministas y agregación mediante la biblioteca estándar. El Proyecto 05 añade ventanas explícitas de informe, resúmenes deterministas, métricas exactas con dos decimales, límites inmutables del informe, renderización TXT/Markdown, escape específico del formato y escritura UTF-8. El Proyecto 06 añade descubrimiento superficial y determinista de archivos, clasificación por sufijo, planificación dry-run inmutable, políticas explícitas de colisión, fronteras de symlink, identidad (device, inode), anclaje de raíz/categorías, nombres de staging acotados y commit atómico no-replace sensible a la plataforma con renameat2(RENAME_NOREPLACE) en Linux.
A medida que se publiquen nuevos capítulos, esta página debe actualizarse en el mismo pull request para que el curso siempre tenga una única ruta de navegación fiable y accesible con un clic.