İç İç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
Python'da Fonksiyonlara Giriş
kursunun bir parçasıdırEgzersiz talimatları
- İç içe fonksiyonun fonksiyon başlığını
inner()fonksiyon adı vewordtek bir parametre ile tamamlayın. - Dönüş değerini tamamlayın: tuple'ın her bir öğesi
inner()adresine bir çağrı olmalı vethree_shouts()adresindeki parametreleri her bir çağrıya argüman olarak aktarmalıdır.
Uygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
# 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'))