BaşlayınÜcretsiz başlayın

İç İçe Fonksiyonlar I

Son videoda fonksiyonların fonksiyonlar içinde yuvalanmasını öğrendiniz. Bunu yapmak istemenizin bir nedeni, fonksiyonlar içinde aynı hesaplamaları tekrar tekrar yazmaktan kaçınmaktır. İç içe fonksiyonları tanımlamakta yeni bir şey yoktur: def adresindeki normal bir fonksiyon gibi tanımlarsınız ve başka bir fonksiyonun içine yerleştirirsiniz!

Bu alıştırmada, three_shouts() işlevinin içinde, bir dize nesnesini !!! ile birleştiren iç içe geçmiş bir inner() işlevi tanımlayacaksınız. three_shouts() daha sonra, her biri inner() kullanılarak !!! ile birleştirilen bir dize olan üç öğeden oluşan bir tuple döndürür. Devam et!

Bu egzersiz, kursun bir parçasıdır

Python'da Fonksiyonlara Giriş

Kursa Göz Atın

Egzersiz talimatları

  • İç içe fonksiyonun fonksiyon başlığını inner() fonksiyon adı ve word tek bir parametre ile tamamlayın.
  • Dönüş değerini tamamlayın: tuple'ın her bir öğesi inner() adresine bir çağrı olmalı ve three_shouts() adresindeki parametreleri her bir çağrıya argüman olarak aktarmalıdır.

Uygulamalı etkileşimli egzersiz

Bu egzersizi bu örnek kodu tamamlayarak deneyin.

# 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'))
Kodu Düzenle ve Çalıştır