Estado: ✅ Curso Activo | Nivel: Intermedio
Este repositorio contiene el material oficial del curso Py121, enfocado en dominar la Biblioteca Estándar de Python para construir aplicaciones robustas, eficientes y escalables. Es la continuación de Py111 y el paso previo a estructuras de datos complejas.
⚠️ Nota Importante: Este repositorio ha sido actualizado en 2026 con contenido moderno (Python 3.12+ y conceptos de 3.13). Si buscas el material original, puedes encontrarlo en la rama legacy.
Este curso forma parte de la serie Fundamentos de Python (py1xx):
| Curso | Título | Estado |
|---|---|---|
| py101 | Introducción a Python 3 | Prerrequisito |
| py111 | POO con Python 3 | Prerrequisito |
| py121 | Biblioteca estándar de Python | ✅ Este curso |
| py131 | Estructuras de Datos y Algoritmia | Siguiente paso |
| py141 | Automatización y Extracción de Datos | Aplicación práctica |
Un programa diseñado para servir como puente hacia la ingeniería de datos, desarrollo backend de alto rendimiento y orquestación de sistemas. Al completarlo serás capaz de:
- Manipular datos eficientemente utilizando colecciones avanzadas, iteradores y formatos binarios.
- Interactuar con el sistema operativo, gestionando archivos, procesos y variables de entorno.
- Escribir código robusto mediante logging avanzado, pruebas unitarias y gestión segura de recursos.
- Dominar la concurrencia y los nuevos runtimes (GIL-free) con hilos, procesos y futuros.
- Implementar programación asíncrona moderna utilizando
asyncio.
El contenido está dividido en cuadernos (notebooks) progresivos:
01- Colecciones Avanzadas02- Iteradores y Generadores03- Itertools y Functools04- Bytes y Struct05- Expresiones Regulares06- Datos CSV y JSON
07- Sistema y Argumentos08- Variables de Entorno09- Subprocesos y Orquestación10- Pathlib y Sistema de Archivos
11- Bases de Datos con SQLite12- Redes y HTTP
13- Recursos y Contextlib14- Logging Avanzado15- Pruebas Unitarias
16- Datetime Moderno17- Teoría de Concurrencia y Runtime18- Hilos y Procesos19- Futuros y Ejecutores
20- Fundamentos de AsyncIO21- Gestión de Tareas Async22- Sincronización Asíncrona23- Contextvars y Conclusiones
¡Olvídate de configurar entornos locales complejos! Este repositorio está configurado para GitHub Codespaces.
- Haz clic en el botón "Code" (verde) arriba a la derecha.
- Ve a la pestaña "Codespaces".
- Haz clic en "Create codespace on main".
El entorno se iniciará automáticamente con Python 3 y todas las extensiones necesarias listas para usar.
Si prefieres trabajar en tu máquina:
-
Clonar el repositorio
git clone https://github.com/PythonistaMX/py121.git cd py121 -
Crear entorno virtual (Recomendado)
python3 -m venv venv source venv/bin/activate # En Windows: venv\Scripts\activate
-
Instalar dependencias
pip install -r requirements.txt
-
Iniciar Jupyter
# (Asegúrate de tener jupyter instalado o instálalo con pip install jupyterlab) jupyter lab
Este material es desarrollado y mantenido por José Luis Chiquete Valdivieso.
Este proyecto está bajo la licencia Creative Commons Atribución 4.0 Internacional (CC-BY 4.0).
Eres libre de:
- ✅ Compartir el material en cualquier medio o formato
- ✅ Adaptar, remezclar y crear contenido derivado
- ✅ Usar con fines comerciales
Con la condición de:
- 📌 Atribución: Debes dar crédito apropiado, proporcionar un enlace a la licencia e indicar si se han realizado cambios.
Véase el archivo LICENSE para los términos completos.