Kom igångKom igång gratis

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

Visa kurs

Övningsinstruktioner

  • Fyll i funktionshuvudet för den nästlade funktionen med funktionsnamnet inner() och en enskild parameter word.
  • Fyll i returvärdet: varje element i tuplet ska vara ett anrop till inner(), där du skickar in parametrarna från three_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'))
Redigera och kör kod