Los decoradores son una forma de cambiar, mejorar o alterar de cualquier forma el funcionamiento de una función.
Los decoradores se definen con el@
símbolo seguido del nombre del decorador, justo antes de la definición de la función.
Ejemplo:
@logtime
def hello():
print('hello!')
Estahello
función tiene ellogtime
decorador asignado.
Siempre que llamemoshello()
, se llamará al decorador.
Un decorador es una función que toma una función como parámetro, envuelve la función en una función interna que realiza el trabajo que tiene que hacer y devuelve esa función interna. En otras palabras:
def logtime(func):
def wrapper():
# do something before
val = func()
# do something after
return val
return wrapper
Más tutoriales de Python:
- Introducción a Python
- Instalación de Python 3 en macOS
- Ejecutar programas de Python
- Python 2 frente a Python 3
- Los fundamentos de trabajar con Python
- Tipos de datos de Python
- Operadores de Python
- Cadenas de Python
- Booleanos de Python
- Números de Python
- Python, aceptando entrada
- Declaraciones de control de Python
- Listas de Python
- Tuplas de Python
- Conjuntos de Python
- Diccionarios de Python
- Funciones de Python
- Objetos de Python
- Bucles de Python
- Módulos de Python
- Clases de Python
- La biblioteca estándar de Python
- Depurar Python
- Alcance de las variables de Python
- Python, acepta argumentos desde la línea de comandos
- Recursión de Python
- Funciones anidadas de Python
- Funciones de Python Lambda
- Cierres de Python
- Entornos virtuales de Python
- Usa una GoPro como cámara web remota usando Python
- Python, como crear una lista a partir de una cadena
- Decoradores de Python
- Cadenas de documentos de Python
- Introspección de Python
- Anotaciones de Python
- Python, cómo enumerar archivos y carpetas en un directorio
- Python, como comprobar si un número es par o impar
- Python, cómo obtener los detalles de un archivo
- Python, como comprobar si existe un archivo o directorio
- Excepciones de Python
- Python, como crear un directorio
- Python, como crear un archivo vacío
- Python, la declaración `with`
- Python, crea una solicitud de red
- Python, instalando paquetes de terceros usando `pip`
- Python, lee el contenido de un archivo