Nested Functions
Leçon 2 sur 12 du cours Les décorateurs Python de Coddy.
Avant de plonger dans les décorateurs, nous devons comprendre quelques concepts importants liés aux fonctions Python.
En Python, nous pouvons inclure une fonction à l'intérieur d'une autre, ce que l'on appelle également une fonction imbriquée.
Par exemple,
def outer_function():
print("This is the outer function.")
def inner_function():
print("This is the inner function.")
inner_function()
Dans cet exemple, outer_function contient une fonction imbriquée appelée inner_function.
Lorsque outer_function est appelée, elle affichera d'abord "This is the outer function." puis appellera inner_function. inner_function affichera ensuite "This is the inner function."
Notez que inner_function ne peut être appelée qu'à partir de outer_function.
Si vous essayez d'appeler inner_function en dehors de outer_function, vous obtiendrez une NameError indiquant que inner_function n'est pas définie.
Défi
FacileÉcrivez une fonction appelée greeting_generator qui prend un nom comme argument et renvoie un message de salutation incluant le nom.
Le message de salutation doit être généré par une fonction imbriquée appelée get_greeting, qui prend le nom comme argument et renvoie une chaîne de caractères disant "Hello, [name]!".
Voici un exemple de la façon dont la fonction devrait fonctionner :
>>> greeting = greeting_generator("Alice")
>>> greeting
"Hello, Alice!"
>>> greeting = greeting_generator("Bob")
>>> greeting
"Hello, Bob!"
Contraintes
- Vous devez utiliser une fonction imbriquée appelée
get_greetingpour générer le message de salutation. - Le message de salutation doit inclure le nom passé à
greeting_generator.
Essayez vous-même
Toutes les leçons de Les décorateurs Python
Entraînez-vous par vous-même : Compilateur Python en ligne