Курс 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"

  1. Объединение коллекций в Python
  2. Использование *args
  3. Метод join() для объединения элементов
  4. Проверка условий в Python
  5. Объединение множеств в Python
  6. Поиск индексов подстроки
  7. Операторы увеличения и уменьшения переменной
  8. Многострочные строки в Python
  9. Создание словаря через dict comprehension
  10. Создание детектора плагиата
  11. Создание функций высшего порядка
  12. Конвертация текстовых чисел с помощью Numerizer
  13. Итерация по коллекции в Python
  14. Удаление дубликатов из списка с помощью dict.fromkeys
  15. Перетасовка списков в Python
  16. Работа с WindowsPath()
  17. Профилирование с cProfile
  18. Обмен данными с asyncio.Queue
  19. Функции классификации комплексных чисел
  20. Ограничение ресурсов в Python
  21. Antigravity модуль
  22. Оператор is в Python
  23. Объединение списков с помощью zip
  24. Проверка списка: any() и all()
  25. Генерация чисел с range()
  26. Объединение словарей в Python 3.5+
  27. Ноутбуки AMD Ryzen ™ 4000: мощность и эффективность
  28. Порядок и длина множеств в Python
  29. Функция sleep() в Python
  30. Поиск с библиотекой Google
  31. Многострочные комментарии в Python
  32. Парсинг веб-страниц с Beautiful Soup
  33. Модуль pprint: улучшение вывода данных
  34. Python reversed() функция
  35. %pinfo: получение информации об объекте
  36. Метод join() с набором
  37. Генераторы в Python
  38. Работа со строками в Python.
  39. Создание и обучение модели с Keras
  40. Список методов и атрибутов
  41. Отправка POST запроса на сервер.
  42. Модуль array: создание и использование массивов
  43. Обязательные аргументы в Python
  44. Сравнение def и lambda-функций
  45. Объявление переменных в Python

Marketello читают маркетологи из крутых компаний