islice
- Python kursu
- Orta seviye
- Ders 96/116
- 5 dk
islice ile dilimlemeyi öğrenirsin.
islice
islice(iterable, stop) ya da islice(iterable, start, stop, step) bir yinelenebilir nesnenin bir bölümünü alır. Liste dilimlemeye benzer ama yineleyiciler üzerinde de çalışır; ara liste üretmez.
Örnek: list(islice(range(10), 3)) çağrısı [0, 1, 2] döner. list(islice(range(10), 2, 8, 2)) çağrısı [2, 4, 6] döner. Negatif indeks desteklenmez; bu, liste diliminden farklı bir kısıtlamadır.
Bellek avantajı
islice, büyük veri akışlarında bellek avantajı sağlar. Örneğin bir dosyadan satır satır okurken islice(file, 100) ile ilk 100 satırı alabilirsin; tüm dosyayı belleğe yüklemeden.
Benzer şekilde sonsuz yineleyicılarda islice(count(1), 10) ile ilk 10 öğeyi güvenle alabilirsin. list() ile sarınca sonuç listeye dönüşür; ama sarmadan yalnızca döngüde kullanırsan bellek tüketimi minimum kalır.
Uygulama islice ile ilk üçü al
from itertools import islice ile başla. result = list(islice(range(10), 3)) ile range'in ilk üç öğesini al. Sonra print(result) ile yazdır.
Başlangıç kodu
# islice ile range'in ilk üç öğesini alÖrnek çözüm
# islice ile range'in ilk üç öğesini al
from itertools import islice
result = list(islice(range(10), 3))
print(result)Beklenen çıktı
[0, 1, 2]
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 islice ne zaman tercih edilir?
- Yineleyiciler üzerinde dilimlemek için Doğru cevap
- Negatif indeks gerektiğinde
- Yalnızca listelerde
- Yeni liste oluşturmak için
Açıklama: islice yineleyiciler üzerinde dilimleme yapar; liste üretmez.
2 islice çağrısı
from itertools import islice
result = list(____(range(10), 3))
print(result)
from itertools import islice
result = list(islice(range(10), 3))
print(result)
Açıklama: islice yineleyici dilimler.
3 islice parçalarını eşleştir
| Kavram | Anlamı |
|---|---|
islice |
Dilimleme işlevi |
range(10) |
Yinelenebilir |
stop |
Bitiş indeksi |
step |
Adım |