Que fait un décorateur en Python ? Pourquoi on peut passer des arguments à certains décorateur ?
Comprendre les décorateurs peut être difficile car ils ajoutent des niveaux d'abstraction en modifiant les fonctions de manière indirecte.
Mais savoir les utiliser correctement rendra vos programmes plus "pythoniques" !
Découvrez comment créer des décorateurs pour vos fonctions. Et les décorateurs n'auront plus de secrets pour vous !
🐍 Vous ne connaissez pas encore Python ? Découvrez mes cours complets pour débutants 👉 • Apprendre Python en 1 heure - Cours Comple...
🔔 Abonnez-vous pour plus de vidéos sur Python : / @commentcoder
🧠 Code du décorateur :
import time
def chronometre(fonction):
def nouvelle_fonction():
debut = time.time()
fonction()
fin = time.time()
print(f"Temps = {fin - debut} secondes")
return nouvelle_fonction
@chronometre
def notre_fonction():
print("Bonjour, c'est notre_fonction !")
time.sleep(2)
if __name__ == '__main__':
notre_fonction()
🤯 Code du décorateur avec arguments :
import time
def temps_moyen(nb_fois):
def chronometre(fonction):
def nouvelle_fonction():
debut = time.time()
for _ in range(nb_fois):
fonction()
fin = time.time()
print(f"Temps = {fin - debut} secondes")
return nouvelle_fonction
return chronometre
@temps_moyen(3)
def notre_fonction():
print("Bonjour, c'est notre_fonction !")
time.sleep(2)
if __name__ == '__main__':
notre_fonction()