Bu makalede, lambda işlevleri olarak da bilinen anonim işlevi öğreneceksiniz. Ne olduklarını, sözdizimlerini ve onları nasıl kullanacağınızı (örneklerle) öğreneceksiniz.
Python'da lambda fonksiyonları nelerdir?
Python'da anonim bir işlev, isimsiz olarak tanımlanan bir işlevdir.
Normal işlevler def
Python'da anahtar sözcük kullanılarak tanımlanırken , anonim işlevler lambda
anahtar sözcük 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
lambda bağımsız değişkenleri: ifade
Lambda işlevlerinin herhangi bir sayıda bağımsız değişkeni 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 ikiye katlayan bir lambda işlevi örneği.
# Program to show the use of lambda functions double = lambda x: x * 2 print(double(5))
Çıktı
10
Yukarıdaki programda lambda x: x * 2
lambda fonksiyonudur. Burada x argü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 işlev olarak adlandırabiliriz. İfade
çift = lambda x: x * 2
neredeyse aynıdır:
def double (x): return x * 2
Python'da Lambda İşlevinin Kullanımı
Kısa bir süre için isimsiz bir işleve ihtiyaç duyduğumuzda lambda işlevlerini kullanırız.
Python'da bunu genellikle daha yüksek dereceli bir işleve (başka işlevleri bağımsız değişken olarak alan bir işlev) argüman olarak kullanırız. Lambda işlevleri filter()
, map()
vb. Gibi yerleşik işlevlerle birlikte kullanılır .
() Filtreli kullanım örneği
filter()
Python işlevi bir fonksiyonu ve bağımsız değişkenler olarak liste halinde sürer.
Listedeki tüm öğelerle işlev çağrılır ve işlevin değerlendirdiği öğeleri içeren yeni bir liste döndürülür True
.
filter()
Bir listeden yalnızca çift sayıları filtrelemek için örnek bir işlev kullanımı .
# 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ı
(4, 6, 8, 12)
Map () ile kullanım örneği
map()
Python işlevi bir fonksiyonu ve bir liste halinde sürer.
Listedeki tüm öğelerle işlev ç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()
Bir listedeki tüm öğeleri ikiye katlamak için örnek bir işlev kullanımı .
# 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ı
(2, 10, 8, 12, 16, 22, 6, 24)