itertools.islice
Берёт часть элементов итератора, как срез.
Python 3.13
itertools.islice(iterable, stop)
itertools.islice(iterable, start, stop[, step])Параметры
- iterableIterable
- Итерируемый объект.
- startint | Noneнеобязательный
- Номер первого элемента, по умолчанию 0.
- stopint | None
- Номер, перед которым выбор заканчивается; None — до конца.
- stepint | Noneнеобязательный
- Шаг, по умолчанию 1.
Возвращаемое значение
Итератор по выбранным элементам.
Примеры
Первые три элемента
Python 3.13
from itertools import islice
print(list(islice('abcdefg', 3)))['a', 'b', 'c']
Срез с началом и шагом
Python 3.13
from itertools import islice
print(list(islice(range(10), 2, 8, 2)))[2, 4, 6]
Подробности
Работает как срез, но для любых итераторов, в том числе бесконечных и файлов. Отрицательные значения не поддерживаются — будет ValueError. Пропущенные элементы итератора расходуются и больше не вернутся.
