Junior — Middle
Explica el concepto de decoradores en Python y cómo se utilizan para cambiar el comportamiento de las funciones.
sobes.tech AI
Respuesta de la IA
Los decoradores en Python son funciones que toman otra función y devuelven una nueva función con un comportamiento modificado o ampliado, sin cambiar el código fuente de la función decorada.
Se usan comúnmente para:
- Registrar llamadas
- Verificar permisos de acceso
- Cachear resultados
- Medir tiempos de ejecución
Un ejemplo de un decorador simple que muestra un mensaje antes y después de llamar a la función:
def decorador(func):
def envoltorio(*args, **kwargs):
print("Antes de llamar a la función")
resultado = func(*args, **kwargs)
print("Después de llamar a la función")
return resultado
return envoltorio
@decorador
def decir_hola(nombre):
print(f"¡Hola, {nombre}!")
decir_hola("Mundo")
La salida será:
Antes de llamar a la función
¡Hola, Mundo!
Después de llamar a la función
De esta manera, los decoradores permiten modificar dinámicamente el comportamiento de las funciones sin cambiar su código fuente.