miércoles, 9 de julio de 2025

🧪 Python Nivel 2 – Parte 14: Uso de Decoradores (Decorators) en Python

 

🎯 ¿Qué aprenderás?

✅ Qué son los decoradores y para qué sirven
✅ Cómo crear y aplicar decoradores
✅ Cómo usarlos para validar, medir tiempos o modificar comportamiento
✅ Decoradores anidados y con parámetros


🧱 ¿Qué es un decorador?

Un decorador en Python es una función que recibe otra función como argumento y devuelve una nueva función con funcionalidades añadidas, sin modificar su estructura interna.


🔧 Sintaxis básica


def mi_decorador(funcion_original): def nueva_funcion(): print("Antes de ejecutar") funcion_original() print("Después de ejecutar") return nueva_funcion @mi_decorador def saludar(): print("Hola!") saludar()

🧠 Salida:


Antes de ejecutar Hola! Después de ejecutar

✅ ¿Para qué sirven los decoradores?

✔️ Validar parámetros
✔️ Medir tiempos de ejecución
✔️ Agregar logs o registros
✔️ Controlar permisos o acceso
✔️ Reutilizar código sin repetir lógica


🕐 Ejemplo: medir tiempo de ejecución


import time def medir_tiempo(func): def wrapper(*args, **kwargs): inicio = time.time() resultado = func(*args, **kwargs) fin = time.time() print(f"Tiempo: {fin - inicio:.2f}s") return resultado return wrapper @medir_tiempo def procesar(): time.sleep(2) print("Proceso terminado") procesar()

🧩 Decorador con argumentos


def repetir(n): def decorador(func): def wrapper(*args, **kwargs): for _ in range(n): func(*args, **kwargs) return wrapper return decorador @repetir(3) def hola(): print("Hola!") hola()

🧠 ¿Qué aprendiste hoy?

✔️ Qué son y cómo funcionan los decoradores
✔️ Cómo aplicarlos en funciones reales
✔️ Cómo pasar parámetros a los decoradores
✔️ A reutilizar lógica de forma limpia y elegante


📂 Código de ejemplos en GitHub:
github.com/josecodetech

🎥 Video explicativo en YouTube:
https://youtu.be/oloxPaRSGpg



No hay comentarios:

Publicar un comentario

Se procedera a revision para su pronta publicacion en caso de que no incumpla las normas de blogger.