Lambda fonksiyonları

Geliştiriciler için Orta Düzey Python

Jasmin Ludolf

Senior Data Science Content Developer

Basit fonksiyonlar

def average(values):
    average_value = sum(values) / len(values)
    return average_value
Geliştiriciler için Orta Düzey Python

Lambda fonksiyonları

  • lambda anahtar sözcüğü
    • Bir anonim fonksiyonu ifade eder

 

lambda
Geliştiriciler için Orta Düzey Python

Lambda fonksiyonları

  • lambda anahtar sözcüğü
    • Bir anonim fonksiyonu ifade eder

 

lambda arguments
Geliştiriciler için Orta Düzey Python

Lambda fonksiyonları

  • lambda anahtar sözcüğü
    • Bir anonim fonksiyonu ifade eder

 

lambda arguments:
Geliştiriciler için Orta Düzey Python

Lambda fonksiyonları

  • lambda anahtar sözcüğü
    • Bir anonim fonksiyonu ifade eder

$$

lambda arguments: expression
  • Tek argüman için geleneksel değişken x'tir
  • expression, fonksiyon gövdesinin karşılığıdır
  • return ifadesi gerekmez

$$

  • Değişken olarak saklanabilir
Geliştiriciler için Orta Düzey Python

Bir lambda fonksiyonu oluşturma

# Lambda ortalama fonksiyonu
print(lambda x: sum(x) / len(x))



<function <lambda> at 0x7f11ab813d80>
# Özel ortalama fonksiyonu
def average(x):
    return sum(x) / len(x)  

print(average)
<function average at 0x7f11ab813ec0>
Geliştiriciler için Orta Düzey Python

Lambda fonksiyonlarını kullanma

# Ortalamayı al
(lambda x: sum(x) / len(x))
Geliştiriciler için Orta Düzey Python

Lambda fonksiyonlarını kullanma

# Ortalamayı al
(lambda x: sum(x) / len(x))([3, 6, 9])

$$

$$

# Ortalamayı yazdır
print((lambda x: sum(x) / len(x))([3, 6, 9]))
6.0
Geliştiriciler için Orta Düzey Python

Bir lambda fonksiyonunu saklama ve çağırma

# Lambda fonksiyonunu değişken olarak sakla
average = lambda x: sum(x) / len(x)

# average fonksiyonunu çağır print(average([3, 6, 9]))
6.0
Geliştiriciler için Orta Düzey Python

Birden çok parametre

# İki argümanlı lambda fonksiyonu
power = lambda x, y: x**y


# 2'nin 3. kuvvetini al print(power(2, 3))
8
Geliştiriciler için Orta Düzey Python

Yinelenebilirlerle lambda fonksiyonları

  • map() bir fonksiyonu yinelenebilirdeki öğelerin tümüne uygular
names = ["john", "sally", "leah"]

# map() içinde bir lambda fonksiyonu uygula capitalize = map(lambda x: x.capitalize(), names)
print(capitalize)
<map object at 0x7fb200529c10>
# Listeye dönüştür
print(list(capitalize))
['John', 'Sally', 'Leah']
Geliştiriciler için Orta Düzey Python

Özel vs. lambda fonksiyonları

Senaryo Fonksiyon türü
Karmaşık görev Özel
Aynı görev tekrar tekrar Özel
Bir kez yapılacak Lambda
Basit görev Lambda
Geliştiriciler için Orta Düzey Python

Hadi pratik yapalım!

Geliştiriciler için Orta Düzey Python

Preparing Video For Download...