PaliSkill
Python avancé

Chapitre 4 / 10

Décorateurs

10 leçons dans ce chapitre.

1

Fonctions comme objets, sans le raccourci @

Disponible
0%

Python Intermédiaire a déjà montré qu'une fonction peut être passée en argument à une autre. Un décorateur pousse cette idée un cr…

Voir les détails du chapitre

Python Intermédiaire a déjà montré qu'une fonction peut être passée en argument à une autre. Un décorateur pousse cette idée un cran plus loin : une fonction qui reçoit une autre fonction et renvoie une nouvelle fonction qui l'enveloppe. Ce code affiche , , puis . renvoie , une closure (vue dans Python Intermédiaire) qui se souvient de (ici, d'origine) — remplace ensuite la variable par cette vers…

🔒

Le décorateur simple avec @

Verrouillée

La syntaxe , placée juste audessus d'une définition de fonction, remplace exactement le motif vu à la leçon précédente — en plus l…

🔒

Décorer une fonction qui prend des arguments

Verrouillée

Les décorateurs vus jusqu'ici ne fonctionnent qu'avec des fonctions sans argument. Pour décorer une fonction qui en prend, l'envel…

🔒

Préserver l'identité de la fonction avec functools.wraps

Verrouillée

Sans précaution, une fonction décorée perd son nom d'origine : affiche après décoration, pas — gênant pour le débogage ou la docum…

🔒

Un décorateur qui prend lui-même des arguments

Verrouillée

Un décorateur comme (qui répète l'appel trois fois) a besoin d'un niveau supplémentaire de fonction imbriquée : une fonction qui r…

🔒

Plusieurs décorateurs empilés

Verrouillée

Une fonction peut avoir plusieurs décorateurs, empilés les uns sur les autres : ils s'appliquent du plus proche de la fonction ver…

🔒

Cas d'usage : chronométrer une fonction

Verrouillée

Un décorateur peut mesurer le temps d'exécution d'une fonction, avec le module — un cas d'usage concret très courant, qui évite d'…

🔒

Cas d'usage : une mise en cache simple

Verrouillée

Un décorateur de cache (ou mémoïsation) stocke le résultat d'un appel déjà effectué, pour le renvoyer immédiatement si la fonction…

🔒

Unpacking à l'appel : *liste et **dict

Verrouillée

Python Intermédiaire a montré / pour définir une fonction acceptant un nombre variable d'arguments. À l'appel, et font l'inverse :…

🔒

Cas pratique : un décorateur de journalisation réutilisable

Verrouillée

Cette dernière leçon combine , /, et un décorateur avec argument, dans un décorateur de journalisation configurable. Ce que fait c…

Quiz de chapitre

6 questions transversales sur ce chapitre.

Voir le quiz →

Progression du chapitre

0/10 terminées

Accès complet

La première leçon de chaque chapitre est gratuite (10 leçons sur 97).

2 500 XOF / 3,81 € / 4,15 $

Débloquez les 87 leçons restantes de ce module