¿Cómo funcionan los decoradores en Python?