Итератор среза

Срез – удобный инструмент списков, который доступен и для итераторов с помощью itertools.islice().

Например, нам достаточно читать из крупного файла только три первых строки:

with open('test.txt', 'r') as f:
    header = itertools.islice(f, 3)
    
    for line in header:
        print(line, end = '')
Строка 1
Строка 2
Строка 3

Функция itertools.islice() позволяет итерироваться по любым объектам в формате среза. Например, следующая функция возвращает n первых элементов итерируемого объекта в виде списка:

def take(n, iterable):
    return list(islice(iterable, n))