PaliSkill
Python intermédiaire

Leçon 7 / 9 — Chapitre 2: Fonctions avancées

Fonctions imbriquées

Une fonction peut être définie à l'intérieur d'une autre fonction. Cette fonction intérieure n'existe que pendant l'exécution de la fonction extérieure, et ne peut pas être appelée depuis l'extérieur.

def calculer_facture(montant):
    def appliquer_remise(valeur):
        return valeur * 0.9

    return appliquer_remise(montant)

print(calculer_facture(100))

Ce code affiche 90.0. appliquer_remise n'existe que le temps de l'exécution de calculer_facture : tenter d'appeler appliquer_remise(100) directement, en dehors de calculer_facture, provoquerait une erreur NameError, car ce nom n'est pas defini à ce niveau.

Ce decoupage est utile quand une petite fonction n'a de sens que dans le contexte d'une seule autre fonction, sans avoir besoin d'exister de manière independante ailleurs dans le programme.

A vous de jouer : ecrivez une fonction traiter_commande(montant) qui définit à l'intérieur une fonction arrondir(valeur) renvoyant round(valeur, 2), et l'utilise avant de renvoyer le résultat.

🔒

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