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

Reduce() ve lambda fonksiyonları

Lambda fonksiyonlarını kullanmakta çok iyi olmaya başladınız! İşte beceri repertuarınıza ekleyebileceğiniz bir işlev daha. reduce() işlevi, bir liste üzerinde bazı hesaplamalar yapmak için kullanışlıdır ve map() ve filter() işlevlerinin aksine, sonuç olarak tek bir değer döndürür. reduce() adresini kullanmak için functools modülünden içe aktarmanız gerekir.

Birkaç egzersiz öncesinden gibberish() adresini hatırlıyor musunuz?

# Define gibberish
def gibberish(*args):

    """Concatenate strings in *args together."""

    hodgepodge = ''

    for word in args:

        hodgepodge += word

    return hodgepodge

gibberish() basitçe bir dizeler listesini argüman olarak alır ve bu dizelerin tümünün birleştirilmesini tek değerli bir sonuç olarak döndürür. Bu alıştırmada, reduce() adresini ve dizeleri bir araya getiren bir lambda işlevini kullanarak bu işlevi kopyalayacaksınız.

Bu egzersiz

Python'da Fonksiyonlara Giriş

kursunun bir parçasıdır
Kursu Görüntüle

Egzersiz talimatları

  • reduce işlevini functools modülünden içe aktarın.
  • reduce() çağrısında, item1 ve item2 olmak üzere iki dize argümanı alan ve bunları birleştiren bir lambda işlevi geçirin; ayrıca dizelerin listesini de geçirin, stark. Sonucu result adresine atayın. reduce() adresine ilk argüman lambda fonksiyonu, ikinci argüman ise stark listesi olmalıdır.

Uygulamalı interaktif egzersiz

Bu örnek kodu tamamlayarak bu egzersizi bitirin.

# Import reduce from functools


# Create a list of strings: stark
stark = ['robb', 'sansa', 'arya', 'brandon', 'rickon']

# Use reduce() to apply a lambda function over stark: result
result = reduce(____, ____)

# Print the result
print(result)
Kodu Düzenle ve Çalıştır