Skip to content

Commit 44af197

Browse files
committed
docs: añadir cheat sheets completos y reorganizar documentación
1 parent 9d1018f commit 44af197

File tree

9 files changed

+3058
-81
lines changed

9 files changed

+3058
-81
lines changed

README.md

Lines changed: 126 additions & 81 deletions
Original file line numberDiff line numberDiff line change
@@ -1,63 +1,99 @@
11
# 🐍 Python Fundamentos
22

3-
> Ejercicios guiados y prácticos para aprender los fundamentos de **Python** — incluye guía paso a paso, flujo GitHub real *(fork → rama → PR)* y comprobaciones automáticas con lint y tests.
3+
Repositorio pedagógico de ejercicios de Python pensado para estudiantes con base en bases de datos y experiencia previa con GitHub (forks, ramas y PRs). Incluye estructura clara, ejercicios graduados, ejemplos, CI, linting y una guía de contribución precisa.
44

55
---
66

7-
## 🎯 Objetivo
8-
Este repositorio te acompaña en tus primeros pasos con Python, siguiendo un enfoque **profesional y pedagógico**. Aprenderás a escribir código limpio, estructurado y probado mientras practicas el flujo de trabajo real de un desarrollador con Git y GitHub.
7+
## 📑 Índice
8+
9+
- [🎯 Requisitos](#-requisitos)
10+
- [👤 Flujo de trabajo del alumno](#-flujo-de-trabajo-del-alumno)
11+
- [📝 Normas de commits](#-normas-de-commits)
12+
- [🧪 Cómo ejecutar tests y lint](#-cómo-ejecutar-tests-y-lint)
13+
- [📚 Documentación del repositorio](#-documentación-del-repositorio)
14+
- [📖 Cheat Sheets de Python](#-cheat-sheets-de-python)
15+
- [📋 Guías del curso](#-guías-del-curso)
16+
- [📂 Estructura del repositorio](#-estructura-del-repositorio)
17+
- [🗺️ Módulos de aprendizaje](#️-módulos-de-aprendizaje)
918

1019
---
1120

12-
## 🧭 Flujo de trabajo
13-
14-
1. **Fork** de este repositorio a tu cuenta.
15-
2. **Clona** tu fork y crea una rama para tus ejercicios:
16-
```bash
17-
git clone <tu-fork>
18-
cd python-fundamentos
19-
git switch -c ejercicios-TuNombre
20-
```
21-
3. Activa tu entorno y prepara las dependencias:
22-
```bash
23-
python -m venv .venv
24-
source .venv/bin/activate # macOS/Linux
25-
.venv\Scripts\activate # Windows
26-
pip install -U pip pytest ruff
27-
```
28-
4. Trabaja por bloques (01 → 06) y haz commits pequeños y descriptivos.
29-
5. Abre una Pull Request hacia la rama `revision` del repo original.
30-
6. Espera el ✅ del CI antes de solicitar revisión.
21+
## 🎯 Requisitos
22+
- Python 3.12 o superior
23+
- Git
24+
- make (opcional pero recomendado para ejecutar tareas locales)
3125

32-
---
26+
> 💡 **Importante sobre entornos virtuales**: Este proyecto utiliza entornos virtuales (`.venv`) para aislar dependencias. Es una práctica profesional estándar que evita conflictos entre proyectos. Consulta [`cheatsheets/01_intro.md`](./cheatsheets/01_intro.md#-entornos-virtuales-venv) para aprender qué son y por qué son importantes.
3327
34-
## 🧰 Requisitos técnicos
28+
## 👤 Flujo de trabajo del alumno
29+
1. Haz un fork de este repositorio en tu cuenta.
30+
2. Clona tu fork localmente.
31+
3. Crea una rama para tus ejercicios: `ejercicios-Nombre` (usa tu nombre o alias).
32+
4. Trabaja con commits pequeños y descriptivos.
33+
5. Abre un Pull Request (PR) desde tu rama `ejercicios-Nombre` hacia la rama `revision` de este repo.
34+
6. Participa en la revisión por pares y atiende comentarios de la formadora.
3535

36-
- **Python 3.12 o superior**
37-
- **Git**
38-
- **make** (opcional, pero recomendado para automatizar tareas locales)
36+
## 📝 Normas de commits
37+
Prefijos recomendados:
38+
- `feat:` nueva funcionalidad/ejercicio
39+
- `fix:` correcciones
40+
- `refactor:` reestructuración sin cambiar comportamiento
41+
- `test:` pruebas
42+
- `docs:` documentación
3943

40-
### Comandos disponibles si tienes `make`:
41-
```bash
42-
make setup # crea entorno e instala dependencias
43-
make lint # revisión de estilo con Ruff
44-
make test # ejecuta tests automáticos con Pytest
45-
```
44+
Ejemplo: `feat: agregar ejercicios guiados de 01_intro`
4645

47-
### Alternativa manual:
48-
```bash
49-
python -m venv .venv
50-
source .venv/bin/activate # o .venv\Scripts\activate en Windows
51-
pip install -U pip ruff pytest
52-
pytest -q
53-
ruff check .
54-
```
46+
## 🧪 Cómo ejecutar tests y lint
47+
Con make:
48+
- `make setup` (crea el entorno y instala dependencias mínimas)
49+
- `make test`
50+
- `make lint`
51+
52+
Sin make (alternativa manual):
53+
- Windows PowerShell: `python -m venv .venv; .venv/Scripts/Activate.ps1; python -m pip install -U pip ruff pytest`
54+
- macOS/Linux: `python3 -m venv .venv; source .venv/bin/activate; python -m pip install -U pip ruff pytest`
55+
- Ejecutar: `pytest -q` y `ruff check .`
56+
57+
## 📚 Documentación del repositorio
58+
59+
Este repositorio contiene **dos tipos de documentación** con propósitos diferentes:
60+
61+
### 📖 Cheat Sheets de Python
62+
63+
📁 **Carpeta: [`cheatsheets/`](./cheatsheets/)** - Referencia técnica de Python
64+
65+
Hojas de referencia rápida para consultar mientras programas:
66+
67+
| Archivo | Contenido |
68+
|---------|-----------|
69+
| [� INDICE](./cheatsheets/INDICE.md) | Índice y guía de uso de los cheat sheets |
70+
| [01_intro.md](./cheatsheets/01_intro.md) | Variables, tipos básicos, **entornos virtuales**|
71+
| [02_estructuras.md](./cheatsheets/02_estructuras.md) | Strings, números, booleanos, **f-strings**|
72+
| [03_control_flujo.md](./cheatsheets/03_control_flujo.md) | if/elif/else, for, while, break/continue |
73+
| [04_funciones.md](./cheatsheets/04_funciones.md) | Definición, parámetros, return, scope, lambdas |
74+
| [05_colecciones.md](./cheatsheets/05_colecciones.md) | Listas, tuplas, diccionarios, sets |
75+
| [06_archivos_y_modulos.md](./cheatsheets/06_archivos_y_modulos.md) | I/O archivos, imports, JSON/CSV |
76+
| [🚀 python_quick_reference.md](./cheatsheets/python_quick_reference.md) | **Referencia rápida todo-en-uno** |
77+
78+
💡 **Tip**: Mantén abierto `python_quick_reference.md` mientras programas.
79+
80+
### 📋 Guías del curso
81+
82+
📁 **Carpeta: [`docs/`](./docs/)** - Organización pedagógica
83+
84+
Documentación sobre cómo está estructurado el curso:
85+
86+
| Archivo | Contenido |
87+
|---------|-----------|
88+
| [roadmap.md](./docs/roadmap.md) | Ruta de aprendizaje y tiempos estimados |
89+
| [rubrica-evaluacion.md](./docs/rubrica-evaluacion.md) | Criterios de evaluación |
90+
| [checklist-revision-pares.md](./docs/checklist-revision-pares.md) | Guía para revisión por pares |
5591

5692
---
5793

5894
## 📂 Estructura del repositorio
5995

60-
```plaintext
96+
```
6197
python-fundamentos/
6298
├─ 01_intro/ → primeros pasos con Python
6399
├─ 02_estructuras/ → tipos básicos y operadores
@@ -66,60 +102,69 @@ python-fundamentos/
66102
├─ 05_colecciones/ → listas, tuplas, diccionarios, sets
67103
├─ 06_archivos_y_modulos/ → manejo de archivos e imports
68104
├─ 07_mini_proyectos/ → pequeños retos aplicados
69-
├─ tests/ → pruebas automáticas con pytest
70-
└─ docs/ → guías, rúbrica y checklist
105+
├─ cheatsheets/ → � referencia rápida de Python (sintaxis, ejemplos)
106+
├─ docs/ → 📋 guías del curso (roadmap, rúbricas)
107+
└─ tests/ → pruebas automáticas con pytest
71108
```
72109

73110
---
74111

75-
## 🧠 Cómo trabajar los ejercicios
76-
77-
Cada carpeta contiene:
78-
79-
- **Ejercicios guiados** con pasos numerados.
80-
- **Ejercicios autónomos** para practicar.
81-
- **Un desafío contextualizado** (por ejemplo, Bigotes Felices).
82-
- **Sección de Errores comunes** y **Tiempo estimado**.
83-
84-
Consulta `docs/roadmap.md` para ver el orden sugerido y los objetivos de aprendizaje de cada módulo.
112+
## 🗺️ Módulos de aprendizaje
113+
114+
Cada módulo contiene:
115+
- 📖 **README.md** - Objetivos y conceptos clave
116+
- 📝 **ejercicios.md** - Ejercicios guiados y autónomos
117+
- 💻 **ejemplos/** - Código de ejemplo ejecutable
118+
119+
### Ruta sugerida
120+
121+
1. **[01_intro](./01_intro/)** - Primeros pasos
122+
- Variables, tipos básicos, entrada/salida
123+
- ⚠️ **Configura tu entorno virtual aquí**
124+
125+
2. **[02_estructuras](./02_estructuras/)** - Tipos de datos
126+
- Strings, números, booleanos, conversiones
127+
- 📚 Aprende f-strings (muy importante)
128+
129+
3. **[03_control_flujo](./03_control_flujo/)** - Decisiones y repeticiones
130+
- if/elif/else, for, while
131+
132+
4. **[04_funciones](./04_funciones/)** - Organización del código
133+
- Definir funciones, parámetros, return
134+
135+
5. **[05_colecciones](./05_colecciones/)** - Estructuras de datos
136+
- Listas, tuplas, diccionarios, sets
137+
138+
6. **[06_archivos_y_modulos](./06_archivos_y_modulos/)** - Persistencia y organización
139+
- Leer/escribir archivos, imports
140+
141+
7. **[07_mini_proyectos](./07_mini_proyectos/)** - Aplicación práctica
142+
- Proyectos integradores
85143

86144
---
87145

88-
## ✍️ Convenciones de commits
146+
## 🎓 Próximos pasos
89147

90-
Prefijos recomendados:
91-
92-
- `feat:` nueva funcionalidad o ejercicio
93-
- `fix:` corrección de errores
94-
- `refactor:` mejora sin cambio funcional
95-
- `test:` añadidos o ajustes en pruebas
96-
- `docs:` cambios en documentación
148+
1. ✅ Lee el [roadmap](./docs/roadmap.md) para entender la estructura del curso
149+
2. ✅ Configura tu entorno según [`cheatsheets/01_intro.md`](./cheatsheets/01_intro.md)
150+
3. ✅ Haz un fork del repositorio
151+
4. ✅ Empieza con [`01_intro/ejercicios.md`](./01_intro/ejercicios.md)
152+
5. ✅ Mantén abierta la [referencia rápida](./cheatsheets/python_quick_reference.md)
97153

98-
Ejemplo:
99-
```bash
100-
git commit -m "feat(intro): completar ejercicio 3 sobre variables"
101-
```
154+
**¡Feliz aprendizaje! 🚀**
102155

103156
---
104157

105-
## 🧩 Verificación rápida
158+
## 👥 Créditos
106159

107-
Antes de subir tu código, asegúrate de que todo pasa correctamente:
108-
```bash
109-
ruff check .
110-
pytest -q
111-
```
112-
Si ambos comandos terminan sin errores, el CI aprobará tu PR automáticamente.
160+
**Autoría y diseño pedagógico**: Anaïs Rodríguez Villanueva
113161

114-
---
115-
116-
## 🪶 Licencia
162+
Este material ha sido desarrollado con fines educativos como parte de un programa de formación en desarrollo web e inteligencia artificial.
117163

118-
📄 MIT License — este material puede reutilizarse con fines educativos citando la autoría de la desarrolladora: Anaïs Rodríguez Villanueva.
164+
### 📄 Licencia
119165

120-
---
166+
Este proyecto está bajo licencia MIT. Puedes reutilizar y adaptar el material citando la autoría original.
121167

122-
## 💡 Créditos
168+
### 🤝 Contribuciones
123169

124-
Desarrollado con fines pedagógicos y vocación docente por **Anaïs Rodríguez Villanueva**, en tiempo personal, como recurso abierto para el aprendizaje de Python.
125-
El contenido se ofrece bajo licencia **MIT**, permitiendo su uso educativo libre con el debido reconocimiento de autoría.
170+
Las contribuciones son bienvenidas. Por favor, consulta [CONTRIBUTING.md](./CONTRIBUTING.md) para más detalles sobre cómo participar en el proyecto.

0 commit comments

Comments
 (0)