Курс Python → Вложенные генераторы в Python

При использовании вложенных генераторов в Python вы можете создать двумерную структуру данных из двух одномерных итераторов. Общий синтаксис для этого выглядит следующим образом: [[expression for y in iter2] for x in iter1]. Этот синтаксис позволяет вам использовать выражение для каждого элемента второго итератора iter2 при обходе элементов первого итератора iter1.

Например, если у вас есть два списка чисел numbers1 = [1, 2, 3] и numbers2 = [4, 5, 6], и вы хотите создать двумерный список, содержащий произведения элементов этих списков, вы можете использовать вложенный генератор следующим образом:

numbers1 = [1, 2, 3]
numbers2 = [4, 5, 6]
result = [[x * y for y in numbers2] for x in numbers1]
print(result)

В результате выполнения этого кода вы получите двумерный список [[4, 5, 6], [8, 10, 12], [12, 15, 18]], где каждый элемент получен путем умножения элементов соответствующих позиций из numbers1 и numbers2.

Использование вложенных генераторов в Python позволяет вам компактно и элегантно создавать двумерные структуры данных из одномерных итераторов, что может быть полезно в различных сценариях программирования, например, при работе с матрицами, таблицами или другими структурами, требующими двумерного представления данных.

Твои коллеги будут рады, поделись в

Автор урока

Дмитрий Комаровский
Дмитрий Комаровский

Автоматизация процессов
в КраснодарБанки.ру

Другие уроки курса "Python"

  1. Округление банкира в Python
  2. Обрезка изображения с Pillow
  3. Метаклассы в Python
  4. Генерация тестовых данных с factory_boy
  5. Описание скриптов в README
  6. Установка и использование emoji
  7. Работа с defaultdictами в Python
  8. Проверка подстроки в строке с помощью in
  9. Декораторы в Python
  10. Генератор чисел Фибоначчи
  11. Работа с collections в Python
  12. Генераторы данных
  13. Проверка элементов списка условием
  14. Импорт в Python: список all
  15. Получение текущей даты в Python
  16. Обработка исключений в Python
  17. Инверсия списков и строк в Python
  18. Замена текста в Python
  19. Python union() функция — объединение множеств
  20. Создание списка дат
  21. Оформление кода по PEP 8
  22. Создание и использование ChainMap
  23. Чтение и запись TOML-конфигов
  24. Работа с часовыми поясами в Python.
  25. Выход из профиля в Django
  26. Работа с буфером обмена на Python
  27. Операторы увеличения и уменьшения в Python
  28. Умножение строк и списков
  29. Возврат нескольких значений
  30. Подсчет часто встречающихся элементов
  31. Библиотека sh: использование команд bash в Python
  32. Фильтрация элементов с помощью islice
  33. split() без разделителя
  34. Обработка исключений в Python 3
  35. Изменяемые и неизменяемые объекты
  36. Декораторы с аргументами в Python
  37. Аннотации типов в Python
  38. Вакансии в Nebius
  39. Протокол управления контекстом
  40. Имена объектов в Python
  41. Оптимизация поиска в словарях
  42. Обновление ключей в Python
  43. Разрешение имен в Python
  44. Функция format() в Python
  45. Операторы сравнения в Python
  46. Комментарии в Python.
  47. Функции map, filter и reduce

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