Python'da Lambda Fonksiyonları Nasıl Kullanılır (Anonim Fonksiyonlar)
Python'da lambda işlevlerinin nasıl kullanılacağını öğrenin. Lambda tuşlarıyla anonim işlevlerde, satır içi geri aramalarda ve liste verilerini sıralamada uzmanlaşın.
Genel Bakış
Python'da işlevler birinci sınıf vatandaşlardır; yani değişkenlere atanabilirler, diğer işlevlere argüman olarak aktarılabilirler ve işlevlerden döndürülebilirler. Standart işlevler 'def' anahtar sözcüğü kullanılarak bildirilirken, Python aynı zamanda anonim satır içi işlevler oluşturmak için kısa bir sözdizimi de sağlar: 'lambda' işlevleri.
Bir lambda işlevi, 'lambda' anahtar sözcüğü ve ardından bir bağımsız değişken listesi, iki nokta üst üste ve tek bir ifadeyle tanımlanır. Sözdizimi 'lambda argümanları: ifade'dir. 'def' işlevlerinin aksine, lambdalar bir 'return' ifadesi gerektirmez; ifadenin sonucu otomatik olarak döndürülür. Tek bir mantıksal satırla sınırlıdırlar, bu da onları basit, tek seferlik işlemler için ideal kılar.
Lambda işlevleri en yaygın olarak "sorted()", "map()" ve "filter()" gibi üst düzey işlevlere argüman olarak kullanılır. Örneğin, özel sıralama kriterlerini tanımlamak için 'sorted()'un 'anahtar' bağımsız değişkenine bir lambda işlevi iletebilir veya bunları grafiksel veya olay odaklı uygulamalarda hafif geri çağırma işlevleri olarak kullanabilirsiniz.
Kod ve Yürütme Çıkışı
Bu komut dosyası lambda kullanarak hafif anonim işlevler oluşturmayı gösterir.
# 1. Simple lambda function assigned to a variable
double = lambda x: x * 2
print("Double of 5:", double(5))
# 2. Multi-argument lambda
add = lambda x, y: x + y
print("Sum of 3 + 4:", add(3, 4))
# 3. Using lambda as a sorting key (sorting by age)
people = [
{"name": "Alice", "age": 28},
{"name": "Bob", "age": 22},
{"name": "Charlie", "age": 35}
]
people.sort(key=lambda person: person["age"])
print("Sorted by age:", people)Double of 5: 10
Sum of 3 + 4: 7
Sorted by age: [{'name': 'Bob', 'age': 22}, {'name': 'Alice', 'age': 28}, {'name': 'Charlie', 'age': 35}]Adım Adım Uygulama
- Lambda anahtar sözcüğünü ve ardından virgülle ayrılmış parametre adlarınızı yazın.
- İki nokta üst üste koyun ve ardından değerlendirmek ve geri dönmek istediğiniz tek ifadeyi ekleyin.
- Lambda'yı sorted(), map() veya filter() gibi işlevlere doğrudan geri çağırma olarak iletin.
Sıkça Sorulan Sorular
Bir lambda işlevi döngüler veya birden çok ifade içerebilir mi?
Hayır, Python'daki lambda işlevleri kesinlikle tek bir ifadeyle sınırlıdır. Karmaşık mantığa, döngülere veya değişken atamalara ihtiyacınız varsa def'i kullanarak standart bir işlev tanımlamanız gerekir.
Değişkenlere lambda fonksiyonları atamalı mıyım?
Genellikle hayır. PEP 8 yönergeleri, standart işlevler daha iyi yığın izleme adları sağladığından, bir değişkene lambda atamak yerine standart bir def ifadesinin kullanılmasını önerir.
İlgili Konular
Python'da sort() yöntemini ve sorted() işlevini kullanarak bir listeyi nasıl sıralayacağınızı öğrenin. Özel anahtar sıralama ve ters sıralama örneklerini keşfedin.
Python'da Liste Anlama Nasıl Kullanılır?Python'da liste kavramalarını nasıl kullanacağınızı öğrenin. Kısa döngüler yazın, koşullu filtreler uygulayın ve temiz görsel sözdizimiyle matrisler oluşturun.
Önerilen Python Kaynakları
İlgili etkileşimli eğitimler, yardımcı sayfalar ve kod karşılaştırmalarıyla bilginizi genişletin.
Python İşlevleri
Python fonksiyonlarında ustalaşın. Def kullanarak yeniden kullanılabilir kod yazmayı, bağımsız değişkenleri tanımlamayı, değerleri döndürmeyi ve kapsamı yerel ve genel olarak nasıl anlayacağınızı öğrenin.
Python Matematik Modülü İşlevleri Hile Sayfası
Python matematik standart kütüphanesi için hızlı başvuru kılavuzu. Trigonometrik, logaritmik, yuvarlama ve aritmetik fonksiyonların nasıl kullanılacağını öğrenin.
Python vs JavaScript: Hangi Programlama Dili En İyisidir?
Python ve JavaScript arasında kapsamlı bir karşılaştırma. Sözdizimi farklılıklarını, performansı, kullanım örneklerini (arka uç ve ön uç) ve kodlama örneklerini keşfedin.