Курс 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. inspect в Python: анализ кода
  2. Создание словарей с defaultdict
  3. Избегайте двойного подчеркивания
  4. Возврат нескольких значений
  5. Создание функций с произвольным количеством аргументов
  6. Логирование с Logzero: ротация файла
  7. Работа с файлами в Python
  8. Проекты на Python
  9. Зарезервированные слова в Python
  10. Работа с индексами списков
  11. Возврат значений из генератора
  12. Удаление файлов с shutil.os.remove()
  13. Просмотр внешнего файла в Python
  14. Быстрый поиск кода
  15. Работа с контекстными менеджерами
  16. Solidity для DeFi Ethereum
  17. Псевдонимы в Python
  18. Определение имен функций
  19. Работа с комплексными числами
  20. Непрерывная проверка в Python
  21. Аннотации типов в Python
  22. Установка и использование Virtualenv
  23. Изменение элемента списка
  24. Создание пар из последовательностей
  25. Проблемы с dict в Python
  26. Создание именованных кортежей в Python
  27. Операция += для списков
  28. Использование *args
  29. Работа с контекст-менеджером «with»
  30. Комментарии в Python
  31. Разделение строки с помощью split()
  32. Работа с рекламными данными в Pandas
  33. Очистка строки в Python
  34. Метод count в Python: почему count(», ») возвращает 4?
  35. Безопасные SQL-запросы в Python 3.11
  36. Метод count() для списков
  37. Методы __repr__ и __str__ в Python
  38. Работа с collections в Python.
  39. Непрерывная проверка в Python
  40. Присоединение элементов коллекции
  41. Проверка условий в Python
  42. Извлечение аудио из видео
  43. Проверка дубликатов в Python
  44. Передача аргументов через **arguments
  45. Область видимости переменных
  46. Подчеркивание в REPL
  47. Оператор is в Python
  48. Отделение звука от видео

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