Skip to content

carlos2512a/python

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🐍 Python - Proyectos y Aprendizaje

Typing SVG

📋 Descripción del Repositorio

Este repositorio contiene una colección completa de proyectos, ejercicios y aplicaciones desarrolladas en Python durante mi formación como estudiante de Ingeniería en Informática en la Universidad Tecnológica de Chile (UTEM).

Desde conceptos básicos hasta proyectos avanzados, aquí documento mi journey de aprendizaje en uno de los lenguajes más versátiles de la programación.

🎯 Objetivos del Repositorio

  • 📚 Aprender Python desde lo básico hasta nivel avanzado
  • 🔧 Desarrollar proyectos prácticos aplicando conceptos teóricos
  • 📊 Explorar librerías populares del ecosistema Python
  • 🤖 Implementar algoritmos y estructuras de datos
  • 🌐 Crear aplicaciones web con frameworks modernos
  • 📈 Analizar datos con herramientas de ciencia de datos

🛠️ Tecnologías y Librerías

🐍 Python Core

Python Jupyter PyCharm VS Code

📊 Data Science & Analytics

NumPy Pandas Matplotlib Seaborn

🌐 Web Development

Django Flask FastAPI

🤖 Machine Learning

Scikit-Learn TensorFlow

📁 Estructura del Repositorio

📦 python/
├── 📂 01_Fundamentos/
│   ├── 📄 variables_tipos_datos.py
│   ├── 📄 estructuras_control.py
│   ├── 📄 funciones_basicas.py
│   └── 📄 manejo_archivos.py
├── 📂 02_Programacion_Orientada_Objetos/
│   ├── 📄 clases_objetos.py
│   ├── 📄 herencia_polimorfismo.py
│   └── 📄 encapsulamiento.py
├── 📂 03_Estructuras_Datos/
│   ├── 📄 listas_tuplas.py
│   ├── 📄 diccionarios_sets.py
│   └── 📄 algoritmos_busqueda.py
├── 📂 04_Proyectos_Academicos/
│   ├── 📂 calculadora_cientifica/
│   ├── 📂 sistema_gestion_estudiantes/
│   └── 📂 analizador_texto/
├── 📂 05_Data_Science/
│   ├── 📂 analisis_datos_ventas/
│   ├── 📂 visualizacion_estadisticas/
│   └── 📂 machine_learning_basico/
├── 📂 06_Web_Development/
│   ├── 📂 api_rest_flask/
│   ├── 📂 webapp_django/
│   └── 📂 scraping_web/
├── 📂 07_Automatizacion/
│   ├── 📄 automatizar_tareas.py
│   ├── 📄 procesamiento_archivos.py
│   └── 📄 bot_telegram.py
├── 📂 08_Ejercicios_Algoritmos/
│   ├── 📄 ordenamiento.py
│   ├── 📄 recursividad.py
│   └── 📄 programacion_dinamica.py
└── 📄 README.md

🚀 Proyectos Destacados

🧮 Calculadora Científica

# Calculadora con interfaz gráfica usando Tkinter
# Funciones: básicas, trigonométricas, logaritmos
# Estado: ✅ Completado

📊 Sistema de Gestión de Estudiantes

# CRUD completo con base de datos SQLite
# Características: registro, notas, reportes
# Estado: ✅ Completado

🤖 Bot de Telegram

# Bot automatizado para tareas universitarias
# Funciones: recordatorios, clima, noticias
# Estado: 🔄 En desarrollo

📈 Análisis de Datos de Ventas

# Análisis completo con Pandas y Matplotlib
# Visualizaciones interactivas con Plotly
# Estado: ✅ Completado

📊 Estadísticas del Repositorio

🎓 Conceptos Aprendidos

🔍 Programación Básica

Variables Funciones Bucles Condicionales

🏗️ Programación Avanzada

POO Decoradores Generadores Context Managers

📊 Ciencia de Datos

Data Analysis Visualization ML Basics Statistical Analysis

🏆 Logros y Habilidades

Área Nivel Proyectos Tecnologías
Fundamentos 🟢 Avanzado 15+ Python Core, Algoritmos
POO 🟢 Avanzado 8+ Clases, Herencia, Polimorfismo
Data Science 🟡 Intermedio 5+ Pandas, NumPy, Matplotlib
Web Development 🟡 Intermedio 3+ Flask, Django, API REST
Machine Learning 🔴 Básico 2+ Scikit-Learn, TensorFlow
Automatización 🟢 Avanzado 10+ Scripts, Bots, Scraping

🔥 Código de Ejemplo

# Ejemplo: Análisis de datos universitarios
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns

class AnalizadorEstudiantil:
    def __init__(self, archivo_datos):
        self.df = pd.read_csv(archivo_datos)
        
    def estadisticas_basicas(self):
        """Genera estadísticas descriptivas de las notas"""
        return self.df.describe()
    
    def visualizar_distribucion_notas(self):
        """Crea histograma de distribución de notas"""
        plt.figure(figsize=(10, 6))
        sns.histplot(data=self.df, x='nota_final', bins=20, color='#8B0000')
        plt.title('Distribución de Notas Finales')
        plt.xlabel('Nota Final')
        plt.ylabel('Frecuencia')
        plt.show()
    
    def mejores_estudiantes(self, top_n=10):
        """Obtiene los mejores N estudiantes"""
        return self.df.nlargest(top_n, 'nota_final')

# Uso del analizador
analizador = AnalizadorEstudiantil('notas_estudiantes.csv')
print(analizador.estadisticas_basicas())
analizador.visualizar_distribucion_notas()

🚀 Instalación y Uso

📋 Prerrequisitos

# Python 3.8 o superior
python --version

# Pip para gestión de paquetes
pip --version

🔧 Configuración del Entorno

# Clonar el repositorio
git clone https://github.com/carlos2512a/python.git
cd python

# Crear entorno virtual
python -m venv venv

# Activar entorno virtual
# En Windows:
venv\Scripts\activate
# En Linux/Mac:
source venv/bin/activate

# Instalar dependencias
pip install -r requirements.txt

▶️ Ejecutar Proyectos

# Ejecutar proyecto específico
cd 04_Proyectos_Academicos/calculadora_cientifica/
python main.py

# Ejecutar Jupyter Notebooks
jupyter notebook

# Ejecutar tests
python -m pytest tests/

📚 Recursos de Aprendizaje

🎓 Contexto Académico

  • Universidad: Universidad Tecnológica de Chile (UTEM)
  • Carrera: Ingeniería en Informática
  • Asignaturas Relacionadas:
    • Programación I y II
    • Estructuras de Datos
    • Algoritmos y Complejidad
    • Inteligencia Artificial
    • Minería de Datos

👨‍💻 Autor

Carlos - Estudiante de Ingeniería en Informática
📧 Email: carlos2512a@gmail.com
🎓 Universidad Tecnológica de Chile (UTEM)
💼 LinkedIn: [Tu perfil de LinkedIn]
🐙 GitHub: @carlos2512a

🤝 Contribuciones

¡Las contribuciones son bienvenidas! Si tienes ideas para mejorar algún proyecto o quieres agregar nuevos ejemplos:

  1. 🍴 Fork el proyecto
  2. 🔀 Crea tu rama (git checkout -b feature/NuevaFeature)
  3. 💾 Commit tus cambios (git commit -m 'Add: nueva funcionalidad')
  4. 📤 Push a la rama (git push origin feature/NuevaFeature)
  5. 🔄 Abre un Pull Request

📄 Licencia

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

📈 Progreso de Aprendizaje

progreso_python = {
    "fundamentos": 95,
    "poo": 90,
    "data_science": 75,
    "web_development": 70,
    "machine_learning": 60,
    "automatizacion": 85
}

print("🐍 Mi journey en Python:")
for tema, nivel in progreso_python.items():
    barra = "█" * (nivel // 10) + "░" * (10 - nivel // 10)
    print(f"{tema.title():.<20} [{barra}] {nivel}%")

Repository views
✨ "Python is not just a language, it's a way of thinking" ✨
🐍 Repositorio de Python | Ingeniería en Informática | UTEM 🇨🇱

About

python

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages