Geneste functies I
In de laatste video heb je geleerd hoe je functies binnen functies kunt nesten. Een reden om dit te doen is om te voorkomen dat je dezelfde berekeningen telkens opnieuw binnen functies uitschrijft. Er is niets nieuws aan het definiëren van geneste functies: je definieert ze net als een gewone functie met def en plaatst ze binnen een andere functie!
In deze oefening definieer je binnen de functie three_shouts() een geneste functie inner() die een string-object samenvoegt met !!!. three_shouts() retourneert vervolgens een tuple met drie elementen, waarbij elk element een string is die met inner() is samengevoegd met !!!. Aan de slag!
Deze oefening maakt deel uit van de cursus
Introductie tot functies in Python
Oefeninstructies
- Maak de functieheader van de geneste functie compleet met de functienaam
inner()en één parameterword. - Maak de geretourneerde waarde compleet: elk element van de tuple moet een aanroep van
inner()zijn, waarbij je de parameters vanthree_shouts()als argumenten aan elke aanroep meegeeft.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# 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'))