Курс 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"
- Работа с Enum в Python3.
- Команда %dhist — список посещенных каталогов
- Руководство по библиотеке pydantic
- Метод get для словарей
- Использование модуля __future__
- Аннотации типов в Python
- Декораторы в Python
- Фильтрация элементов с помощью islice
- Блок else в циклах Python
- Поиск наиболее частого элемента списке
- Метод ior для битовых операций
- Возврат нескольких значений
- Метод remove() для удаления элемента из списка
- Списки в Python
- Метод join() для объединения элементов в строку.
- Взаимодействие с sys
- Автоматизация действий с Pyautogui
- Конвертация изображений в PDF
- Комплексные числа в Python
- Список методов и атрибутов
- Удаление дубликатов из списка
- Оператор объединения словарей
- Проверка типов с помощью isinstance
- Функция reversed() в Python
- Метод count() для списков
- Запуск Python из интерпретатора
- Изменения в обработке логических значений
- Работа с контекстными переменными
- Создание namedtuple из словаря
- Нахождение самого длинного слова в списке с помощью max
- Пропуск начальных строк с помощью dropwhile()
- Логирование с Logzero
- Применение функции к каждому элементу списка
- Работа со стеком в Python
- Избегайте пустого списка
- Создание матрицы в Python
- Перебор элементов списка в Python
- Фильтрация последовательности
- Сериализация и десериализация объектов
- Создание множества в Python
- Просмотр атрибутов и методов класса
- Методы Python для работы с данными
- Управление асинхронными задачами на Python.
- Модуль inspect: получение информации о объектах
- Передача неизвестных аргументов в Python.
- Основы работы с os
- Цикл for в Python















