Leçon 8 / 9 — Chapitre 2: Fonctions avancées
Passer une fonction en argument d'une autre fonction
En Python, une fonction est une valeur comme une autre : elle peut être stockée dans une variable, ou passée en argument à une autre fonction, sans être appelée (sans les parentheses) au moment du passage.
def appliquer(operation, valeur):
return operation(valeur)
def doubler(x):
return x * 2
print(appliquer(doubler, 5))
Ce code affiche 10. doubler est passe sans parentheses à appliquer — on transmet la fonction elle-même, pas son résultat. A l'intérieur de appliquer, operation designe cette fonction, et operation(valeur) l'exécute enfin avec l'argument fourni.
C'est exactement ce mecanisme qui permet à map(), filter() et sorted(key=...) d'accepter une fonction (ou une lambda) en argument, comme vu dans les leçons précédentes.
A vous de jouer : ecrivez deux petites fonctions augmenter et diminuer, puis une fonction traiter(operation, valeur) qui appelle celle qu'on lui passe en argument.
Continuez ce module
Débloquez les leçons restantes ainsi que la certification finale.
2 500 XOF / 3,81 € / 4,15 $
Débloquez les 85 leçons restantes de ce module
Votre paiement est vérifié avant l'activation de l'accès