Python Lambda İşlevi
Bu makalede, lambda işlevleri olarak da bilinen anonim işlev hakkında bilgi edineceksiniz. Ne olduklarını, söz dizimlerini ve nasıl kullanılacağını (örneklerle) öğreneceksiniz.
Python’da lambda işlevleri nelerdir?
Python’da isimsiz bir fonksiyon, isimsiz tanımlanmış bir fonksiyondur .
def
Python’da normal fonksiyonlar anahtar kelime kullanılarak tanımlanırken, anonim fonksiyonlar lambda
anahtar kelime kullanılarak tanımlanır.
Bu nedenle anonim işlevlere lambda işlevleri de denir.
Python’da lambda İşlevleri nasıl kullanılır?
Python’daki bir lambda işlevi aşağıdaki sözdizimine sahiptir.
Python’da Lambda İşlevinin Sözdizimi
1 | lambda argümanları: ifade |
Lambda işlevleri herhangi bir sayıda bağımsız değişkene sahip olabilir, ancak yalnızca bir ifade olabilir. İfade değerlendirilir ve döndürülür. Lambda işlevleri, işlev nesnelerinin gerekli olduğu her yerde kullanılabilir.
Python’da Lambda İşlevi Örneği
Giriş değerini iki katına çıkaran bir lambda işlevi örneği.
1 2 3 4 | # Program to show the use of lambda functions double = lambda x: x * 2 print(double(5)) |
Çıktı
1 | <samp>10</samp> |
Yukarıdaki programda lambda x: x * 2
lambda işlevidir. Buradaxargümandır ve x * 2
değerlendirilen ve döndürülen ifadedir.
Bu işlevin adı yoktur. Tanımlayıcıya atanan bir işlev nesnesi döndürür double
. Artık bunu normal bir fonksiyon olarak adlandırabiliriz. İfade
1 | çift = lambda x: x * 2 |
hemen hemen aynıdır:
1 2 | def double(x): dönüş x * 2 |
Python’da Lambda İşlevinin Kullanımı
Kısa bir süre için isimsiz bir fonksiyona ihtiyaç duyduğumuzda lambda fonksiyonlarını kullanırız.
Python’da, onu genellikle daha yüksek dereceli bir işlevin (diğer işlevleri bağımsız değişkenler olarak alan bir işlev ) argümanı olarak kullanırız . filter()
Lambda işlevleri , map()
vb. gibi yerleşik işlevlerle birlikte kullanılır .
filter() ile örnek kullanım
Python’daki işlev filter()
, bir işlevi ve bir listeyi argüman olarak alır.
İşlev, listedeki tüm öğelerle birlikte çağrılır ve işlevin değerlendirdiği öğeleri içeren yeni bir liste döndürülür True
.
filter()
Burada, bir listeden yalnızca çift sayıları filtrelemek için işlevin bir örnek kullanımı verilmiştir .
1 2 3 4 5 6 | # Program to filter out only the even items from a list my_list = [1, 5, 4, 6, 8, 11, 3, 12] new_list = list(filter(lambda x: (x%2 == 0) , my_list)) print(new_list) |
Çıktı
1 | <samp>[4, 6, 8, 12]</samp> |
map() ile örnek kullanım
Python’daki işlev map()
, bir işlev ve bir liste alır.
İşlev, listedeki tüm öğelerle birlikte çağrılır ve her öğe için o işlev tarafından döndürülen öğeleri içeren yeni bir liste döndürülür.
map()
İşte bir listedeki tüm öğeleri ikiye katlamak için bir örnek fonksiyon kullanımı .
1 2 3 4 5 6 7 | # Program to double each item in a list using map() my_list = [1, 5, 4, 6, 8, 11, 3, 12] new_list = list(map(lambda x: x * 2 , my_list)) print(new_list) |
Çıktı
1 | <samp>[2, 10, 8, 12, 16, 22, 6, 24]</samp> |