Sözdizimi
Coddy'nin Python Journey'sinin Logic & Flow bölümünün bir parçası — ders 50 / 78.
Liste kapsamı (list comprehension), mevcut bir listenin değerlerine dayalı yeni bir liste oluşturmak istediğinizde daha kısa bir söz dizimi sunar. Bir liste kapsamının temel söz dizimi şöyledir:
new_list = [expression for item in iterable]Sözdiziminin açıklaması şöyledir:
new_list: Oluşturulacak yeni liste.expression:new_listiçine dahil edilecek değer. Bu,itemöğesinin değiştirilmiş bir versiyonu olabilir.
for item in iterable:iterable(örneğin bir liste, demet veya aralık) içindeki her bir öğe üzerinde yinelenen bir döngüdür.item: Döngüde işlenen mevcut öğedir.
İşte basit bir örnek:
numbers = [1, 2, 3, 4, 5]
squares = [n * n for n in numbers]
print(squares)
# Çıktı: [1, 4, 9, 16, 25]Bu örnekte, liste kapsamı (list comprehension), numbers listesinden her bir n öğesini alıp karesini alarak squares adında yeni bir liste oluşturur.
Görev
KolayArgüman olarak bir sayı listesi olan numbers alan double_numbers adında bir fonksiyon oluşturun. Fonksiyon, orijinal listedeki her sayının iki katına çıkarıldığı yeni bir liste oluşturmak için bir liste kapsamı (list comprehension) kullanmalıdır. Fonksiyon yeni listeyi döndürmelidir.
Kopya kağıdı
Bir liste kapsamı (list comprehension), mevcut bir listenin değerlerine dayalı olarak yeni bir liste oluşturmak için daha kısa bir söz dizimi sunar:
new_list = [expression for item in iterable]Burada:
expression: Yeni listeye dahil edilecek değeritem: İşlenmekte olan mevcut öğeiterable: Orijinal liste, demet (tuple) veya aralık (range)
Örnek:
numbers = [1, 2, 3, 4, 5]
squares = [n * n for n in numbers]
print(squares)
# Çıktı: [1, 4, 9, 16, 25]Kendin dene
def double_numbers(numbers):
# Kodu 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ı