Fonctions imbriquées I
Dans la dernière vidéo, vous avez vu comment imbriquer des fonctions à l'intérieur d'autres fonctions. L'une des raisons de le faire est d'éviter de réécrire les mêmes calculs à répétition. Rien de nouveau quant à la définition d'une fonction imbriquée : vous la définissez comme une fonction ordinaire avec def, puis vous l'insérez dans une autre fonction!
Dans cet exercice, à l'intérieur d'une fonction three_shouts(), vous allez définir une fonction imbriquée inner() qui concatène une chaîne de caractères avec !!!. La fonction three_shouts() retourne ensuite un tuple de trois éléments, où chaque chaîne est concaténée avec !!! grâce à inner(). À vous de jouer!
Cette activité fait partie du cours
Introduction aux fonctions en Python
Instructions de l’exercice
- Complétez l'en-tête de la fonction imbriquée avec le nom
inner()et un seul paramètreword. - Complétez la valeur de retour : chaque élément du tuple doit être un appel à
inner(), en lui passant les paramètres dethree_shouts()comme arguments à chaque appel.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# Define three_shouts
def three_shouts(word1, word2, word3):
"""Returns a tuple of strings
concatenated with '!!!'."""
# Define inner
def ____(____):
"""Returns a string concatenated with '!!!'."""
return word + '!!!'
# Return a tuple of strings
return (____, ____, ____)
# Call three_shouts() and print
print(three_shouts('a', 'b', 'c'))