Курс Python → Генераторные выражения и islice.
Генераторные выражения — это компактный способ создания итерируемых объектов в Python. Они позволяют нам создавать последовательности значений без необходимости создавать список в памяти. Генераторные выражения очень удобны, когда нам нужно обработать большой объем данных или когда мы работаем с бесконечными последовательностями.
Для использования генераторных выражений нам необходимо знать синтаксис. Мы используем круглые скобки вместо квадратных, как при создании списка. Например, вместо [x for x in range(10)] мы напишем (x for x in range(10)). Это позволяет нам создать генераторное выражение, которое будет возвращать значения по мере необходимости, а не сразу создавать весь список.
Для получения среза значений из генераторного выражения мы можем использовать функцию islice из модуля itertools. Эта функция возвращает итератор по срезу значений из итерируемого объекта. Например, если у нас есть генераторное выражение (x for x in range(10)), мы можем использовать islice, чтобы получить только первые 5 значений.
from itertools import islice
gen_expr = (x for x in range(10))
sliced_values = islice(gen_expr, 5)
for val in sliced_values:
print(val)
В данном примере мы создаем генераторное выражение, которое генерирует значения от 0 до 9. Затем мы используем функцию islice, чтобы получить только первые 5 значений из этого генераторного выражения. Наконец, мы перебираем полученные значения и выводим их на экран.
Другие уроки курса "Python"
- Модуль pprint: улучшение вывода данных
- Работа с асинхронными задачами в Python
- Форматирование строк с f-строками
- Любовь к Python
- Работа с файлами в Python
- Копирование словарей и списков в Python
- Склеивание строк без циклов
- Создание лямбда-функций
- Генераторы в Python
- Python OrderedDict и fromkeys() — работа с словарями
- Декораторы в Python
- Работа с комбинациями в Python.
- Библиотека Chartify: руководство
- Работа с zip()
- Мониторинг работы программы Py-spy
- Модуль subprocess: запуск внешних команд
- Глубокое копирование объектов
- Преобразование символов с помощью map
- Работа со словарями Python
- Работа со строками в Python
- Поиск частого элемента
- Область видимости переменных
- Разделение строки с регулярными выражениями
- Функции в одну строку
- Объединение множеств в Python
- Работа с эмодзи в Python
- Применение функции к каждому элементу списка
- Определение размера папок в Python
- Итерация по коллекции в Python
- Декораторы в Python
- Чтение бинарного файла в Python.
- Выражения-генераторы в Python
- Разделение строки с помощью re.split()
- Разделение строки с помощью re.split()
- Оценка выражений генератора в Python
- Конвертация коллекций в Python.
- Метод rpow в Python
- Экспорт внешнего файла с помощью writefile
- Очистка данных с Pandas
- Создание вложенного генератора
- Шаблоны и наследование в Flask
- Оптимизация памяти с __slots__
- Генераторы в Python
- Создание новых функций с помощью functools.partial















