Tekrar Görevi - Lambda ile Sıralama
Coddy'nin Python Journey'sinin Logic & Flow bölümünün bir parçası — ders 59 / 78.
Lambda fonksiyonları, farklı senaryolarda sıralamayı özelleştirmek için sorted() fonksiyonu ile birlikte kullanıldığında inanılmaz derecede faydalıdır. İşte birkaç örnek:
Dizeleri Uzunluğa Göre Sıralama:
names = ["Alice", "Bob", "Charlie", "Diana"]
sorted_names = sorted(names, key=lambda x: len(x))
print(sorted_names)
# Çıktı: ['Bob', 'Alice', 'Diana', 'Charlie']Sözlükleri Değerlere Göre Sıralama:
grades = {"Alice": 85, "Bob": 90, "Charlie": 78}
sorted_grades = sorted(grades.items(), key=lambda x: x[1])
print(sorted_grades)
# Çıktı: [('Charlie', 78), ('Alice', 85), ('Bob', 90)]Sayıları Mutlak Değere Göre Sıralama:
numbers = [-10, 15, -20, 25]
sorted_numbers = sorted(numbers, key=lambda x: abs(x))
print(sorted_numbers)
# Çıktı: [-10, 15, -20, 25]Demetleri Birden Çok Ölçüte Göre Sıralama:
data = [("Alice", 25), ("Bob", 30), ("Charlie", 25)]
sorted_data = sorted(data, key=lambda x: (x[1], x[0]))
print(sorted_data)
# Çıktı: [('Alice', 25), ('Charlie', 25), ('Bob', 30)]Görev
KolayArgüman olarak bir demet listesi olan data alan, sort_tuples adında bir fonksiyon oluşturun. data içindeki her bir demet iki öğe içerir: bir dize ve bir sayı. Fonksiyon, demet listesini ikinci öğeye (sayıya) göre artan düzende sıralamak için bir lambda fonksiyonu ile birlikte sorted() fonksiyonunu kullanmalıdır. Fonksiyon, sıralanmış demet listesini döndürmelidir.
Kopya kağıdı
Dizeleri Uzunluğa Göre Sıralama:
names = ["Alice", "Bob", "Charlie", "Diana"]
sorted_names = sorted(names, key=lambda x: len(x))
print(sorted_names)
# Çıktı: ['Bob', 'Alice', 'Diana', 'Charlie']Sözlükleri Değerlere Göre Sıralama:
grades = {"Alice": 85, "Bob": 90, "Charlie": 78}
sorted_grades = sorted(grades.items(), key=lambda x: x[1])
print(sorted_grades)
# Çıktı: [('Charlie', 78), ('Alice', 85), ('Bob', 90)]Sayıları Mutlak Değere Göre Sıralama:
numbers = [-10, 15, -20, 25]
sorted_numbers = sorted(numbers, key=lambda x: abs(x))
print(sorted_numbers)
# Çıktı: [-10, 15, -20, 25]Demetleri Birden Fazla Kritere Göre Sıralama:
data = [("Alice", 25), ("Bob", 30), ("Charlie", 25)]
sorted_data = sorted(data, key=lambda x: (x[1], x[0]))
print(sorted_data)
# Çıktı: [('Alice', 25), ('Charlie', 25), ('Bob', 30)]Kendin dene
def sort_tuples(data):
# Kodunuzu buraya yazınBu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Logic & Flow bölümündeki tüm dersler
1Değişken Keşfi
SabitlerÇoklu Değişken AtamalarıDeğişken TakasıYer Tutucu DeğişkenlerSayıları YuvarlamaListe Tür Dönüşümü4Rehber Uygulaması
Menüyü GörüntüleKişi Ekle7Kümeler Bölüm 2
Matematiksel İşlemler Bölüm 1Matematiksel İşlemler Bölüm 2Özet - Hazine AvıAlt Kümeler ve Üst KümelerKümeler Üzerinde YinelemeÖzet - Turnuva Takipçisi10Temel List Comprehension Yapıları
SözdizimiBasit Listeler OluşturmaKoşul EklemeVeri Toplulaştırma KullanımıÖzet - Liste EviÖzet - Özgürlük Elementleri13Envanter Yönetim Sistemi
Projeye Genel BakışÖğe Ekle2Sözlükler Bölüm 1
Sözlük Nedir?Sözlük OluşturmaDeğerlere ErişmeSözlükleri DeğiştirmeÖzet - Tarif Yöneticisi5İleri Seviye Karar Yapıları
Ternary OperatörüÜyelik KontrolleriKimlik KontrolleriGirintileme HatalarıÖzet - Tatil Filtresi8Öğrenci Kayıt Yöneticisi
Projeye Genel BakışÖğrenci Ekle11İleri Seviye Fonksiyonlar
Birden Fazla Değer DöndürmeLambda Fonksiyonları Bölüm 1Lambda Fonksiyonları Bölüm 2Tekrar Görevi - Lambda ile SıralamaÖzyinelemeli Fonksiyonlar Bölüm 1Özyinelemeli Fonksiyonlar Bölüm 2Tekrar - İç İçe Listeleri Toplama14Yüksek Mertebeden Fonksiyonlar
Map FonksiyonuFilter FonksiyonuÖzet - E-posta DoğrulayıcıÖzet - Sayı İşleyici3Sözlükler Bölüm 2
Sözlük Metotlarıİç İçe SözlüklerAnahtar KontrolüSözlüklerde DöngülerÖzet - Frekans Sayacı9İleri Düzey Veri Toplulaştırma
Toplam KullanımıMinimum ve Maksimumu BulmaVerileri Verimli SıralamaÖzet - Dictionary Sıralayıcı