Menu
Coddy logo textTech

Koşul Ekleme

Coddy'nin Python Journey'sinin Logic & Flow bölümünün bir parçası — ders 52 / 78.

Koşullu mantık eklediğinizde liste kapsamları (list comprehensions) daha da güçlü hale gelir. Bu, belirli koşullara göre öğeleri filtreleyerek ve dönüştürerek mevcut listelere dayalı yeni listeler oluşturmanıza olanak tanır.

Bir liste kapsamına (list comprehension) koşul eklemek için kullanılan söz dizimi şöyledir:

new_list = [expression for item in iterable if condition]

Söz diziminin açıklaması aşağıdadır:

  • new_list: Oluşturulacak olan yeni liste.
  • expression: new_list iç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ü.
  • item: Döngüde işlenen mevcut öğe.
  • if condition: Mevcut item'ın new_list'e dahil edilip edilmeyeceğini belirleyen bir filtredir. expression, yalnızca condition True olduğunda değerlendirilir.

İşte bir örnek:

numbers = [1, 2, 3, 4, 5, 6]
evens = [n for n in numbers if n % 2 == 0]
print(evens)
# Çıktı: [2, 4, 6]

Bu örnekte, liste kapsamı (list comprehension), numbers listesinden her bir n elemanını alarak ve yalnızca çiftse (yani, n % 2 == 0) dahil ederek evens adında yeni bir liste oluşturur.

challenge icon

Görev

Kolay

Bir sayı listesi olan numbers'ı argüman olarak alan filter_and_square adında bir fonksiyon oluşturun. Fonksiyon, orijinal listedeki sadece pozitif sayıların karelerini içeren yeni bir liste oluşturmak için bir liste kapsamı (list comprehension) kullanmalıdır. Fonksiyon bu yeni listeyi döndürmelidir.

Kopya kağıdı

Koşullu mantığa sahip liste kapsamları (list comprehensions), öğeleri belirli koşullara göre filtrelemenize ve dönüştürmenize olanak tanır:

new_list = [expression for item in iterable if condition]
  • expression: Yeni listeye dahil edilecek değer
  • for item in iterable: Her bir öğe üzerinde döngü kurun
  • if condition: Öğenin dahil edilip edilmeyeceğini belirleyen filtre

Örnek - çift sayıları filtreleme:

numbers = [1, 2, 3, 4, 5, 6]
evens = [n for n in numbers if n % 2 == 0]
print(evens)
# Çıktı: [2, 4, 6]

Kendin dene

def filter_and_square(numbers):
    # Kodu buraya yazın
quiz iconKendini test et

Bu 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