Курс 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. Поиск подстроки в строке
  2. Разделение списка на гнппы
  3. Оптимизация памяти с __slots__
  4. Возврат нескольких значений из функции
  5. Codecademy в Telegram
  6. Создание виртуальной среды
  7. Оператор Walrus в Python 3.8
  8. Генерация случайных чисел в Python
  9. Обмен данными с asyncio.Queue
  10. Печать в одной строке
  11. Установка переменной среды в Python
  12. Глобальные переменные в Python
  13. Генерация чисел с range()
  14. Метод сравнения объектов в Python
  15. Пространство имен в Python
  16. 9 уловок для чистого кода
  17. Списки в Python: основы
  18. Объединение словарей в Python
  19. Оператор break в Python
  20. Defaultdict в Python
  21. Обработка ошибок в Python
  22. Лямбда-функции в Python
  23. Печать комбинаций в Python с Itertools
  24. Асинхронное программирование с asyncio
  25. Структуры данных в Python
  26. Операторы увеличения и уменьшения в Python
  27. Оптимизация методов в Python 3.7
  28. Избегание циклических зависимостей классов в Python
  29. Синтаксис переменных цикла в Python
  30. Python UserString — создание подклассов строк
  31. Ускорение выполнения кода в Python
  32. Создание и операции с дробями
  33. Поиск с библиотекой Google
  34. Метод сравнения объектов в Python
  35. Объединение строк с помощью метода join
  36. Срез списка в Python
  37. Оператор объединения словарей
  38. Удаление ключа из словаря в Python
  39. Python Метод sleep() из time
  40. Оператор del в Python
  41. Защита данных в Python
  42. Создание и обучение модели с Keras
  43. Операции с комплексными числами
  44. Приоритет операций в Python
  45. Оценка точности модели
  46. Многострочные комментарии в Python
  47. Python Менеджер контекста
  48. Определение индекса элемента списка

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