Курс 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. Работа с Enum в Python3.
  2. Команда %dhist — список посещенных каталогов
  3. Руководство по библиотеке pydantic
  4. Метод get для словарей
  5. Использование модуля __future__
  6. Аннотации типов в Python
  7. Декораторы в Python
  8. Фильтрация элементов с помощью islice
  9. Блок else в циклах Python
  10. Поиск наиболее частого элемента списке
  11. Метод ior для битовых операций
  12. Возврат нескольких значений
  13. Метод remove() для удаления элемента из списка
  14. Списки в Python
  15. Метод join() для объединения элементов в строку.
  16. Взаимодействие с sys
  17. Автоматизация действий с Pyautogui
  18. Конвертация изображений в PDF
  19. Комплексные числа в Python
  20. Список методов и атрибутов
  21. Удаление дубликатов из списка
  22. Оператор объединения словарей
  23. Проверка типов с помощью isinstance
  24. Функция reversed() в Python
  25. Метод count() для списков
  26. Запуск Python из интерпретатора
  27. Изменения в обработке логических значений
  28. Работа с контекстными переменными
  29. Создание namedtuple из словаря
  30. Нахождение самого длинного слова в списке с помощью max
  31. Пропуск начальных строк с помощью dropwhile()
  32. Логирование с Logzero
  33. Применение функции к каждому элементу списка
  34. Работа со стеком в Python
  35. Избегайте пустого списка
  36. Создание матрицы в Python
  37. Перебор элементов списка в Python
  38. Фильтрация последовательности
  39. Сериализация и десериализация объектов
  40. Создание множества в Python
  41. Просмотр атрибутов и методов класса
  42. Методы Python для работы с данными
  43. Управление асинхронными задачами на Python.
  44. Модуль inspect: получение информации о объектах
  45. Передача неизвестных аргументов в Python.
  46. Основы работы с os
  47. Цикл for в Python

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