Курс 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. Запрос DELETE с библиотекой requests
  2. Итерации в Python
  3. Простой калькулятор Python
  4. Циклы в Python
  5. Методы classmethod и staticmethod
  6. Создание функций с произвольным количеством аргументов
  7. Функция reversed() в Python
  8. Подсчет количества элементов в списке
  9. Любовь к Python
  10. Копирование и вставка текста в Python
  11. CLI-инструмент howdoi
  12. Метод __ixor__ для побитового исключающего ИЛИ
  13. Оператор Walrus в Python
  14. Генерация фальшивых данных с Faker
  15. Сортировка элементов в Python
  16. Векторизация в Python с NumPy.
  17. Сортировка слиянием
  18. Виртуальное окружение Python
  19. Преобразование данных в Python
  20. Работа с срезами в Numpy
  21. Роль запятой в Python
  22. Выборка чисел
  23. Работа с enumerate()
  24. Использование эмодзи в Python
  25. Ветвление выражения в Python
  26. Приоритет операций в Python
  27. Преобразование списков в словарь
  28. Работа со словарями с defaultdict из collections
  29. Работа с WindowsPath()
  30. Асинхронное программирование с asyncio
  31. Работа с многоуровневыми словарями в Python
  32. Класс-оболочка для словарей
  33. Docstring в Python
  34. Метод join для объединения строк
  35. Перемешивание списка с shuffle()
  36. Управление импортом в Python
  37. Преобразование строки в число
  38. Colorama: окрашивание текста в Python
  39. Python Метод sleep() времени
  40. Генераторы и сеты в Python
  41. inspect в Python: анализ кода
  42. Измерение времени выполнения кода с помощью time
  43. Поиск самого длинного слова в списке с использованием max()
  44. Работа с базами данных SQLite
  45. Генерация случайных чисел в Python
  46. Функции all и any в Python

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