Nästlade funktioner I
I den senaste videon lärde du dig om nästlade funktioner – det vill säga funktioner definierade inuti andra funktioner. En anledning till att använda detta är att undvika upprepade beräkningar i koden. Det finns inget nytt med att definiera nästlade funktioner: du använder helt enkelt def precis som för en vanlig funktion, men placerar den inuti en annan funktion!
I den här övningen ska du, inuti funktionen three_shouts(), definiera en nästlad funktion inner() som konkatenerar ett strängobjekt med !!!. three_shouts() returnerar sedan ett tuple med tre element, där vart och ett är en sträng konkatenerad med !!! via inner(). Sätt igång!
Den här övningen är en del av kursen
Introduktion till funktioner i Python
Övningsinstruktioner
- Fyll i funktionshuvudet för den nästlade funktionen med funktionsnamnet
inner()och en enskild parameterword. - Fyll i returvärdet: varje element i tuplet ska vara ett anrop till
inner(), där du skickar in parametrarna frånthree_shouts()som argument till respektive anrop.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# 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'))