Python’da 'yield' ile Ne Yapar? Yüksek Performanslı Üreticiler

mantikli_dusunce

Yeni Üye
Katılım
Eyl 2026
Konular
1
Mesajlar
1
Tepki puanı
0
Görüntülenme
0
1. 'yield' ne işe yarar?
Cevap: yield, fonksiyonun çalışmasını durdurup bir değer döndürür; sonra kaldığı yerden devam eder. Böylece büyük diziler tek seferde belleğe yüklenmez, satır satır üretilir.

2. Generator nedir ve nasıl oluşturulur?
Cevap: yield içeren fonksiyon bir generator döner. Örnek:
Python:
def sayi_alma():
    for i in range(5):
        yield i
Bu fonksiyon çağrıldığında yield ile değeri üretir, sonraki çağrıda devam eder.

3. Ürettiği değerleri nasıl tüketiriz?
Cevap: for döngüsü, next() fonksiyonu veya generator unpacking ile tüketilir:
Python:
for x in sayi_alma():
    print(x)

4. yield ile return farkı nedir?
Cevap: return, fonksiyonu sonlandırır ve değer döndürür; yield sadece bir değer üretir, fonksiyonun durumu saklanır ve sonraki next() çağrısında devam eder.

5. Gerçek hayatta hangi senaryolarda yield kullanılır?
Cevap:
  • Büyük dosya satır satır işlenirken
  • Veri akışı (stream) API’leri oluştururken
  • Asenkron iterasyon süreçlerinde
  • Bellek kısıtlı ortamlarda büyük koleksiyonları bölerek işleme

yield ile kod, hafıza tüketimini düşürür, hızlı yanıt süreleri sağlar ve kayıtlı durum sayesinde yeniden başlatılabilir.

İlgili konular​

 
Geri
En Üst