Skip to content

Apuntes personales de Python mejorados con IA. Lecciones, ejercicios y documentación para aprender en comunidad. #opensource

License

Notifications You must be signed in to change notification settings

jacs4210/apuntes-python

Repository files navigation

🐍 Apuntes de Python - Fundamentos a Programación Orientada a Objetos

Python License Status

📖 Descripción

Este repositorio contiene apuntes completos de Python desde los fundamentos básicos hasta la programación orientada a objetos. Diseñado para principiantes y estudiantes que quieren aprender Python de manera práctica y progresiva.

🎯 Objetivos de Aprendizaje

Al completar estos apuntes, serás capaz de:

  • ✅ Comprender los fundamentos de Python
  • ✅ Manejar variables, tipos de datos y operadores
  • ✅ Implementar estructuras de control (condicionales y bucles)
  • ✅ Trabajar con estructuras de datos (listas, tuplas, diccionarios)
  • ✅ Crear y usar funciones
  • ✅ Manejar excepciones
  • ✅ Programar con clases y objetos
  • ✅ Aplicar herencia y polimorfismo
  • ✅ Desarrollar proyectos prácticos

📋 Prerrequisitos

  • Conocimientos básicos de informática
  • Ganas de aprender programación
  • Python 3.8 o superior instalado en tu sistema

🚀 Instalación de Python

Windows:

  1. Descarga Python desde python.org
  2. Ejecuta el instalador y marca "Add Python to PATH"
  3. Verifica la instalación: python --version

macOS:

# Usando Homebrew
brew install python

# O descarga desde python.org

Linux (Ubuntu/Debian):

sudo apt update
sudo apt install python3 python3-pip

📁 Estructura del Curso

curso_python/
├── 📄 README.md
├── 📄 requirements.txt
├── 📄 LICENSE
├── 📄 .gitignore
├── 📄 CONTRIBUTING.md
├── 📄 CHANGELOG.md
├── 📁 lecciones/
│   ├── fundamentos/
│   │   ├── 01_prints.py
│   │   ├── 02_variables.py
│   │   ├── 03_input_data.py
│   │   ├── 04_type_conversion.py
│   │   ├── 05_strings.py
│   │   ├── 06_formatted_strings.py
│   │   └── 07_functions_methods.py
│   ├── control-flujo/
│   │   ├── 08_arithmetic_operations.py
│   │   ├── 09_conditions.py
│   │   ├── 10_logical_operators.py
│   │   ├── 11_comparison_operators.py
│   │   ├── 12_while_loops.py
│   │   ├── 13_for_loops.py
│   │   └── 14_nested_loops.py
│   ├── estructuras-datos/
│   │   ├── 15_matrix_lists.py
│   │   ├── 16_list_methods.py
│   │   ├── 17_tuples.py
│   │   ├── 18_unpacking.py
│   │   └── 19_dictionaries.py
│   └── programacion-avanzada/
│       ├── 20_functions.py
│       ├── 21_exceptions.py
│       ├── 22_classes.py
│       ├── 23_inherence.py
│       ├── 24_modules.py
│       └── 25_packages.py
├── 📁 ejercicios/
│   ├── basicos/
│   │   ├── 01_hospital_app.py
│   │   ├── 02_ask_personal_info.py
│   │   ├── 03_ask_weight.py
│   │   ├── 04_substract_string.py
│   │   ├── 05_discount_credit.py
│   │   ├── 06_better_choice.py
│   │   ├── 07_saving_money.py
│   │   └── 08_total_cost_room.py
│   ├── intermedios/
│   │   ├── 09_length_name.py
│   │   ├── 10_guessing_game.py
│   │   ├── 11_car_game.py
│   │   ├── 12_print_total_cost_items.py
│   │   └── 13_print_f_letter.py
│   └── avanzados/
│       ├── 14_largest_number_list.py
│       ├── 15_remove_duplicates.py
│       ├── 16_number_in_letters.py
│       ├── 17_emoji_converter.py
│       ├── 19_get_max_number.py
│       └── utils.py
├── 📁 soluciones/
├── 📁 recursos/
│   ├── cheatsheets/
│   └── referencias/

🚀 Cómo Usar Estos Apuntes

1. Clonar el Repositorio

git clone https://github.com/jacs4210/apuntes-python.git
cd apuntes-python

2. Instalar Dependencias

pip install -r requirements.txt

3. Seguir las Lecciones

  • Comienza con lecciones/fundamentos/01_prints.py y avanza secuencialmente
  • Lee los comentarios en cada archivo
  • Ejecuta los ejemplos para ver los resultados
  • Completa los ejercicios correspondientes

4. Ejecutar Ejemplos

# Ejecutar una lección
python lecciones/fundamentos/01_prints.py

# Ejecutar un ejercicio
python ejercicios/basicos/01_hospital_app.py

📚 Progreso de los Apuntes

Módulo 1: Fundamentos (Lecciones 1-7)

  • Introducción a Python
  • Variables y tipos de datos
  • Entrada y salida de datos
  • Strings y formateo
  • Funciones básicas

Módulo 2: Control de Flujo (Lecciones 8-14)

  • Operadores aritméticos y lógicos
  • Estructuras condicionales
  • Bucles while y for
  • Bucles anidados

Módulo 3: Estructuras de Datos (Lecciones 15-19)

  • Listas y matrices
  • Métodos de listas
  • Tuplas
  • Desempaquetado
  • Diccionarios

Módulo 4: Programación Avanzada (Lecciones 20-22)

  • Funciones avanzadas
  • Manejo de excepciones
  • Programación orientada a objetos
  • Herencia

🎮 Ejercicios Prácticos

Cada lección tiene ejercicios correspondientes que te ayudarán a:

  • Aplicar los conceptos aprendidos
  • Practicar la resolución de problemas
  • Desarrollar habilidades de programación
  • Reforzar el aprendizaje

Niveles de Dificultad:

  • 🟢 Básico: Conceptos fundamentales
  • 🟡 Intermedio: Aplicaciones prácticas
  • 🔴 Avanzado: Proyectos complejos

🤝 Contribuciones

¡Las contribuciones son bienvenidas! Si quieres mejorar este curso:

  1. Haz un fork del repositorio
  2. Crea una rama para tu feature (git checkout -b feature/nueva-leccion)
  3. Commit tus cambios (git commit -am 'Agregar nueva lección')
  4. Push a la rama (git push origin feature/nueva-leccion)
  5. Abre un Pull Request

Tipos de Contribuciones:

  • 📝 Mejorar documentación
  • 🐛 Reportar bugs
  • ✨ Agregar nuevas lecciones
  • 🎯 Mejorar ejercicios
  • 🌍 Traducciones

📖 Recursos Adicionales

Documentación Oficial:

Plataformas de Práctica:

Herramientas Útiles:

🐛 Reportar Problemas

Si encuentras algún error o tienes sugerencias:

  1. Revisa si ya existe un issue similar
  2. Crea un nuevo issue con:
    • Descripción clara del problema
    • Pasos para reproducir
    • Versión de Python
    • Sistema operativo

📄 Licencia

Este proyecto está bajo la Licencia MIT. Ver el archivo LICENSE para más detalles.

👨‍💻 Autor

Jairo Cuartas

🙏 Agradecimientos

  • A la comunidad de Python por crear un lenguaje tan increíble
  • A todos los contribuidores que han ayudado a mejorar este curso
  • A los estudiantes que han proporcionado feedback valioso

Si este curso te ha ayudado, considera darle una estrella al repositorio!


Última actualización: Julio 2025

About

Apuntes personales de Python mejorados con IA. Lecciones, ejercicios y documentación para aprender en comunidad. #opensource

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages