Курс 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 Enum Weekday Usage
- Метод invert для побитового отрицания
- Срезы в Numpy
- Извлечение аудио из видео
- Управление виртуальными окружениями в Python
- Создание словаря с значением по умолчанию
- Работа с комплексными числами
- Метод bool() в Python
- Разность множеств
- Комментарии в Python
- Удаление элементов из списка в Python
- Эффективная конкатенация строк с использованием join()
- Удаление символов новой строки в Python.
- Форматирование вывода списков
- Python Метод Union Множеств
- Генерация случайных чисел Python
- Работа с массивами в Numpy
- Реверс строки и списка в Python.
- Синтаксис переменных цикла в Python
- Экспорт внешнего файла с помощью writefile
- Проблемы с dict в Python
- Поиск самого длинного слова в списке с использованием max()
- Преобразование регистра символов
- Парсинг статей с Newspaper3k
- Создание копии итератора
- discard() — удаление элемента из множества
- Генераторные функции в Python
- Преобразование типов данных в set comprehension
- Логирование с Logzero: ротация файла
- Изменение списка срезами
- Принципы программирования
- Объединение кортежей в Python
- Работа с NumPy массивами
- Python: динамическая типизация и проверка типов
- Получение текущей даты и времени
- Лямбда-функции в цикле
- Выражения-генераторы в Python
- Транспонирование 2D-массива с помощью zip
- Логирование с Loguru
- Библиотека Chartify: руководство
- Функция zip() — объединение последовательностей
- Изучение объектов с помощью dir()
- Замена подстроки
- Flask: создание веб-приложений
- Автоматизация скриптов на AWS Lightsail.















