Lambda ifadeleri # 1 - Python Dersleri (Tutorials)
Merhabalar
Python programlama derslerine yeni bir konu olan lambda ifadeleri ile devam ediyoruz.
Lambda ifadeleri Python'da pratik bir şekilde fonksiyon oluşturmaya yarar.
lambda ifadelerini listelerdeki "List Comprehension " yöntemi gibi düşünebilirsiniz. Nasıl ki listeleri manuel olarak oluşturabilirken pratik bir şekilde formüle bağlı listeleri oluşturabilmiştik. lambda ifadeleri de aynı bu şekilde.
Hatırlamak adına "List Comprehension" yöntemini kullanan bir uygulama yapalım :
Örneğimizde myList adında bir liste bulunuyor. myList listesini kullanarak
item * 3
formülü ile yeni bir liste oluşturmak istiyoruz. Formülle oluşan sayı dizisi newList listesine atanıyor. Oluşan yeni listeye bakalım :
List Comprehension yöntemi bize böyle kolaylıklar sağlar.
List Comprehension'da olduğu gibi lambda ifadelerini kullanarak bir fonksiyonu tek bir satırda oluşturabiliriz. lambda ifadelerinin genel yapısı aşağıdaki gibidir :
fonkctionName = lambda paremeter1, parameter2,.... : statements
Şimdi her zaman yaptığımız yollarla basit bir fonksiyon tanımlayalım :
#Fonksiyon Tanımlama
def kareAl(sayi):
.......sayi = sayi **2
.......return sayi
Örneğimizde klasik yollarla tanımlanmış kareAl() adında tek parametre alan bir fonksiyon görüyoruz. Kendisine parametre yoluyla gelen sayının karesini alıp geriye sonucu döndürüyor.
Bu fonksiyonu çalıştıralım:
print(kareAl(5))
25
sonucu doğru bir şekilde döndürdü. Şimdi bu fonksiyonu lambda ifadesi kullanarak tekrardan yazalım :
kareAl = lambda sayi : sayi**2
Şimdi de çalıştıralım :
print(kareAl(3))
9
Görüldüğü gibi normal bir fonksiyonu tek bir satırda tanımlamış olduk.
Atama operatörünün hemen sol tarafına fonksiyon adı gelirken sağ tarafına lambda anahtar kelimesi ile beraber sayi parametresi geldi. (:) işaretinin sağ tarafına ise return ile dönecek ifade getirildi.
Şimdilik bu kadar.
Umarım faydalı bir çalışma olmuştur.
Teşekkürler.
Kaynak belirtilmeyen görseller bana aittir. The pictures without source in the post is belong to me
The force is with you! You got a 34.18% upvote from @steemyoda courtesy of @elektroyazilim!
You got a 92.65% upvote from @minnowvotes courtesy of @elektroyazilim!
Thank you so much for using our service! Congratulations! You've earned an ROI of 108.90% with bids of: 0.063$
Received 22.29% upvote from @onlyprofitbot courtesy of @elektroyazilim!
More portion of profit will be given to delegators, as the SP pool grows!
Comment below or any post with "@opb !delegate [DelegationAmount]" to find out about current APR, estimated daily earnings in SBD/STEEM
You can now also make bids by commenting "@opb !vote post [BidAmount] [SBD|STEEM]" on any post without the hassle of pasting url to memo!
* Please note you do not have to key in [] for the command to work, APR can be affected by STEEM pricesYou got a 25.00% upvote from @whalecreator courtesy of @elektroyazilim! Delegate your Steem Power to earn 100% payouts.