Курс 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. Избегание циклических зависимостей классов в Python
  3. Работа с коллекциями Python
  4. Метод eq для сравнения объектов
  5. Создание и удаление объектов
  6. Работа с IP-адресами в Python
  7. Переопределение оператора % для объектов
  8. Defaultdict в Python
  9. Сортировка с помощью key
  10. Участие в LP стейкинге Waves
  11. Метод __call__ в Python
  12. Оператор @ для умножения матриц
  13. Python: библиотеки и функции
  14. Установка и использование Virtualenv
  15. Декодирование байтов в строку
  16. Операторы присваивания в Python
  17. Применение функции к списку
  18. Блок try-except-else
  19. Удаление ресурса в Python
  20. Создание списка через цикл
  21. Метод rlshift для битового сдвига
  22. Оценка точности модели
  23. Оператор += в Python
  24. Утечки переменных цикла в Python 3.x
  25. Многопоточность в Python
  26. Основные операции с Numpy
  27. Моржовый оператор в Python 3.8
  28. Построение графиков в Matplotlib
  29. Итераторы в Python
  30. Генерация QR-кодов с библиотекой qrcode
  31. Чтение и запись TOML-конфигов
  32. Профилирование данных с Pandas.
  33. Метод ior для битовых операций
  34. Работа с Telegram API на Python
  35. Оператор is в Python
  36. Преобразование вложенного списка
  37. Модуль future Python
  38. Работа с контекстными переменными
  39. TypedDict для kwargs в Python 3.12
  40. Встроенные функции Python
  41. Форматирование заголовков в Python
  42. Изменение списка срезом
  43. Переворот списка в Python
  44. Поиск с библиотекой Google
  45. Работа с файлами в Python

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