Skip to content

Repository files navigation

Python Projects Portfolio 🐍


🇪🇸 ESPAÑOL

Portafolio de Proyectos Python 🐍

Una colección de proyectos Python que demuestran fundamentos de programación, habilidades de resolución de problemas y desarrollo de aplicaciones del mundo real.

📁 Descripción General de Proyectos

🎂 Calculadora de Cumpleaños

Archivo: birthday.py

  • Calcula la edad exacta (años, meses, días) a partir de la fecha de nacimiento
  • Validación de fecha y manejo de fechas futuras
  • Interfaz interactiva en consola

📅 Calculadora de Día del Año

Archivo: date_of_year.py

  • Determina qué día del año es una fecha dada
  • Maneja años bisiestos con precisión
  • Muestra el porcentaje de progreso del año

🕹️ Simulador de Control Joystick

Archivo: joystick.py

  • Simula entrada de joystick y detección de movimiento
  • Mapeo de controles y análisis direccional
  • Cálculo de distancia desde el centro

💰 Análisis de Rentabilidad

Archivo: profitability.py

  • Análisis financiero de rentabilidad de proyectos
  • Cálculos de ROI y período de recuperación
  • Generación de reportes profesionales

🛒 Sistema de Carrito de Compras

Archivo: shopping.py

  • Gestión completa del carrito con seguimiento de inventario
  • Cálculo de descuentos e impuestos
  • Generación de recibos con resumen detallado

📚 Sistema de Gestión de Biblioteca

Directorio: Library/

  • Sistema integral de gestión de libros de biblioteca
  • Agregar, buscar, prestar y devolver libros
  • Persistencia de datos basada en JSON
  • Seguimiento completo del inventario

Archivos:

  • library.py - Lógica principal del sistema
  • books.json - Base de datos de libros

🔐 Sistema de Login

Directorio: Login/

  • Sistema de autenticación de usuarios
  • Validación de credenciales
  • Manejo seguro de contraseñas

Archivos:

  • login.py - Módulo de autenticación

🎮 Solucionador de Laberintos

Directorio: Maze/

  • Generación y resolución de laberintos usando algoritmo BFS
  • Soporte para múltiples archivos de laberinto
  • Visualización de ruta de solución
  • Conteo de pasos

Archivos:

  • maze.py - Motor de laberintos
  • maze.txt, maze1.txt, maze2.txt - Laberintos de ejemplo

✅ Gestor de Lista de Tareas

Directorio: todo_list/

  • Aplicación completa de gestión de tareas
  • Priorización de tareas (baja, media, alta)
  • Seguimiento de finalización con marcas de tiempo
  • Persistencia en JSON

Archivos:

  • todo_list.py - Aplicación principal
  • todo.json - Almacenamiento de tareas

🚀 Comenzando

Requisitos

  • Python 3.7 o superior
  • Sin dependencias externas requeridas

Instalación

# Clonar repositorio
git clone https://github.com/[tu-usuario]/Python.git
cd Python

# Ejecutar cualquier proyecto
python birthday.py
python Library/library.py
python Maze/maze.py
python todo_list/todo_list.py

💡 Habilidades Técnicas Demostradas

Habilidad Detalles
Estructuras de Datos Listas, Diccionarios, Sets, Tuplas
Manejo de Archivos Persistencia JSON, Entrada/Salida de Archivos
Algoritmos BFS para búsqueda de caminos, Búsqueda y Filtrado
POO Clases, Métodos, Encapsulación
Type Hints Tipado moderno de Python
Manejo de Errores Bloques try-except, Validación
Persistencia de Datos Serialización/Deserialización JSON
Validación de Entrada Manejo robusto de entrada con lógica de reintentos

🔑 Características Principales

Diseño Orientado a Objetos - Clases para componentes complejos
Persistencia de Datos - Almacenamiento basado en JSON
Validación Integral - Verificación de tipos de entrada y manejo de errores
Type Hints - Prácticas modernas de Python (PEP 484)
Docstrings - Documentación completa de funciones (estilo Google)
Interfaces Amigables - Sistemas de menú interactivos
Implementación de Algoritmos - Búsqueda BFS para encontrar caminos
Código Limpio - Cumplimiento de PEP 8

📊 Complejidad del Proyecto

Proyecto Complejidad Conceptos Principales
Cumpleaños Manejo de fechas, validación
Rentabilidad ⭐⭐ Matemáticas, organización de datos
Solucionador de Laberintos ⭐⭐⭐ Algoritmos, búsqueda BFS
Biblioteca ⭐⭐⭐ POO, persistencia de datos
Lista de Tareas ⭐⭐⭐ Operaciones CRUD, JSON
Carrito de Compras ⭐⭐ Cálculos, inventario

🎯 Objetivos de Aprendizaje del Proyecto

Este portafolio fue creado para demostrar:

  • 📚 Fundamentos principales de Python
  • 🔧 Metodologías de resolución de problemas
  • 💼 Prácticas profesionales de codificación
  • 🚀 Desarrollo de aplicaciones del mundo real
  • 📖 Auto-documentación a través de docstrings
  • ✅ Manejo robusto de errores

🧪 Pruebas y Calidad

  • Type hints para claridad del código
  • Validación integral de entrada
  • Manejo de excepciones en toda la aplicación
  • Docstrings de funciones con ejemplos
  • Organización limpia del código

📦 Tecnologías y Herramientas

  • Lenguaje: Python 3.7+
  • Persistencia: JSON
  • Paradigmas: Orientado a Objetos, Funcional
  • Estándares: PEP 8, Estilo Google Docstring

📈 Relevancia Profesional

Este portafolio demuestra las siguientes competencias valoradas en roles de desarrollador junior:

  • ✓ Organización y estructura del código
  • ✓ Manejo de errores y casos límite
  • ✓ Validación de entrada del usuario
  • ✓ Persistencia de datos y manejo de archivos
  • ✓ Implementación de algoritmos
  • ✓ Programación orientada a objetos
  • ✓ Documentación de código
  • ✓ Enfoque en la resolución de problemas

📄 Licencia

Este proyecto está bajo la Licencia MIT - ver archivo LICENSE para detalles.

⭐ Si te fue útil

Si este portafolio te ha sido útil, ¡considera darle una estrella! ⭐

Última actualización: 17 de febrero de 2026


🇬🇧 ENGLISH VERSION

Python Projects Portfolio 🐍

A collection of Python projects demonstrating programming fundamentals, problem-solving skills, and real-world application development.

📁 Projects Overview

🎂 Birthday Calculator

File: birthday.py

  • Calculates exact age (years, months, days) from birth date
  • Date validation and future date handling
  • Interactive console interface

📅 Date of Year Calculator

File: date_of_year.py

  • Determines which day of the year a given date is
  • Handles leap years accurately
  • Shows year progress percentage

🕹️ Joystick Controller Simulator

File: joystick.py

  • Simulates joystick input and movement detection
  • Control mapping and directional analysis
  • Distance calculation from center

💰 Profitability Analysis

File: profitability.py

  • Project profitability financial analysis
  • ROI and payback period calculations
  • Professional report generation

🛒 Shopping Cart System

File: shopping.py

  • Full shopping cart management with inventory tracking
  • Discount calculation and tax handling
  • Receipt generation with itemized summary

📚 Library Management System

Directory: Library/

  • Comprehensive library book management system
  • Add, search, borrow, and return books
  • JSON-based data persistence
  • Complete inventory tracking

Files:

  • library.py - Main system logic
  • books.json - Book database

🔐 Login System

Directory: Login/

  • User authentication system
  • Credentials validation
  • Secure password handling

Files:

  • login.py - Authentication module

🎮 Maze Solver

Directory: Maze/

  • Maze generation and solving using BFS algorithm
  • Multiple maze file support
  • Visual solution path display
  • Step counting

Files:

  • maze.py - Maze engine
  • maze.txt, maze1.txt, maze2.txt - Sample mazes

✅ To-Do List Manager

Directory: todo_list/

  • Complete task management application
  • Task prioritization (low, medium, high)
  • Completion tracking with timestamps
  • JSON persistence

Files:

  • todo_list.py - Application main
  • todo.json - Task storage

🚀 Getting Started

Requirements

  • Python 3.7 or higher
  • No external dependencies required

Installation

# Clone repository
git clone https://github.com/[your-username]/Practicas.git
cd Practicas/Python

# Run any project
python birthday.py
python Library/library.py
python Maze/maze.py
python todo_list/todo_list.py

💡 Technical Skills Demonstrated

Skill Details
Data Structures Lists, Dictionaries, Sets, Tuples
File Handling JSON persistence, File I/O
Algorithms BFS for pathfinding, Search & Filter
OOP Classes, Methods, Encapsulation
Type Hints Modern Python typing
Error Handling Try-except blocks, Validation
Data Persistence JSON serialization/deserialization
User Input Validation Robust input handling with retry logic

🔑 Key Features

Object-Oriented Design - Classes for complex components
Data Persistence - JSON-based storage
Comprehensive Validation - Input type checking and error handling
Type Hints - Modern Python practices (PEP 484)
Docstrings - Complete function documentation (Google style)
Interfaces Amigables - Sistemas de menú interactivos
Implementación de Algoritmos - Búsqueda BFS para encontrar caminos
Código Limpio - Cumplimiento de PEP 8

📊 Project Complexity

Project Complexity Primary Concepts
Birthday Date handling, validation
Profitability ⭐⭐ Math, data organization
Maze Solver ⭐⭐⭐ Algorithms, BFS search
Library ⭐⭐⭐ OOP, data persistence
To-Do List ⭐⭐⭐ CRUD operations, JSON
Shopping Cart ⭐⭐ Calculations, inventory

🎯 Project Learning Objectives

This portfolio was created to demonstrate:

  • 📚 Core Python fundamentals
  • 🔧 Problem-solving methodologies
  • 💼 Professional code practices
  • 🚀 Real-world application development
  • 📖 Self-documentation through docstrings
  • ✅ Robust error handling

🧪 Testing & Quality

  • Type hints for code clarity
  • Comprehensive input validation
  • Exception handling throughout
  • Function docstrings with examples
  • Clean code organization

📦 Technologies & Tools

  • Language: Python 3.7+
  • Persistencia: JSON
  • Paradigms: Orientado a Objetos, Funcional
  • Standards: PEP 8, Google Docstring Style

📈 Career Relevance

This portfolio demonstrates the following competencies valued by junior developer roles:

  • ✓ Code organization and structure
  • ✓ Error handling and edge cases
  • ✓ User input validation
  • ✓ Data persistence and file handling
  • ✓ Algorithm implementation
  • ✓ Object-oriented programming
  • ✓ Code documentation
  • ✓ Problem-solving approach

📄 License

This project is licensed under the MIT License - see LICENSE file for details.

⭐ If You Found This Helpful

If this portfolio has been useful to you, please consider giving it a star! ⭐

Last Updated: February 17, 2026

About

All my programs created in Python throughout my learning

Topics

Resources

Stars

1 star

Watchers

1 watching

Forks

Packages

Contributors

Languages