Курс 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"
- Округление банкира в Python
- Обрезка изображения с Pillow
- Метаклассы в Python
- Генерация тестовых данных с factory_boy
- Описание скриптов в README
- Установка и использование emoji
- Работа с defaultdictами в Python
- Проверка подстроки в строке с помощью in
- Декораторы в Python
- Генератор чисел Фибоначчи
- Работа с collections в Python
- Генераторы данных
- Проверка элементов списка условием
- Импорт в Python: список all
- Получение текущей даты в Python
- Обработка исключений в Python
- Инверсия списков и строк в Python
- Замена текста в Python
- Python union() функция — объединение множеств
- Создание списка дат
- Оформление кода по PEP 8
- Создание и использование ChainMap
- Чтение и запись TOML-конфигов
- Работа с часовыми поясами в Python.
- Выход из профиля в Django
- Работа с буфером обмена на Python
- Операторы увеличения и уменьшения в Python
- Умножение строк и списков
- Возврат нескольких значений
- Подсчет часто встречающихся элементов
- Библиотека sh: использование команд bash в Python
- Фильтрация элементов с помощью islice
- split() без разделителя
- Обработка исключений в Python 3
- Изменяемые и неизменяемые объекты
- Декораторы с аргументами в Python
- Аннотации типов в Python
- Вакансии в Nebius
- Протокол управления контекстом
- Имена объектов в Python
- Оптимизация поиска в словарях
- Обновление ключей в Python
- Разрешение имен в Python
- Функция format() в Python
- Операторы сравнения в Python
- Комментарии в Python.
- Функции map, filter и reduce















