Курс 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 Enum Weekday Usage
  2. Метод invert для побитового отрицания
  3. Срезы в Numpy
  4. Извлечение аудио из видео
  5. Управление виртуальными окружениями в Python
  6. Создание словаря с значением по умолчанию
  7. Работа с комплексными числами
  8. Метод bool() в Python
  9. Разность множеств
  10. Комментарии в Python
  11. Удаление элементов из списка в Python
  12. Эффективная конкатенация строк с использованием join()
  13. Удаление символов новой строки в Python.
  14. Форматирование вывода списков
  15. Python Метод Union Множеств
  16. Генерация случайных чисел Python
  17. Работа с массивами в Numpy
  18. Реверс строки и списка в Python.
  19. Синтаксис переменных цикла в Python
  20. Экспорт внешнего файла с помощью writefile
  21. Проблемы с dict в Python
  22. Поиск самого длинного слова в списке с использованием max()
  23. Преобразование регистра символов
  24. Парсинг статей с Newspaper3k
  25. Создание копии итератора
  26. discard() — удаление элемента из множества
  27. Генераторные функции в Python
  28. Преобразование типов данных в set comprehension
  29. Логирование с Logzero: ротация файла
  30. Изменение списка срезами
  31. Принципы программирования
  32. Объединение кортежей в Python
  33. Работа с NumPy массивами
  34. Python: динамическая типизация и проверка типов
  35. Получение текущей даты и времени
  36. Лямбда-функции в цикле
  37. Выражения-генераторы в Python
  38. Транспонирование 2D-массива с помощью zip
  39. Логирование с Loguru
  40. Библиотека Chartify: руководство
  41. Функция zip() — объединение последовательностей
  42. Изучение объектов с помощью dir()
  43. Замена подстроки
  44. Flask: создание веб-приложений
  45. Автоматизация скриптов на AWS Lightsail.

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