1. 'yield' ne işe yarar?
Cevap:
2. Generator nedir ve nasıl oluşturulur?
Cevap:
Bu fonksiyon çağrıldığında
3. Ürettiği değerleri nasıl tüketiriz?
Cevap:
4.
Cevap:
5. Gerçek hayatta hangi senaryolarda
Cevap:
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
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.