Курс 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"
- Операции с комплексными числами
- Удаление первого элемента списка
- Удаление элементов из списка
- Работа с collections.Counter
- Генераторы в Python
- Разделение строк в Python
- Переопределение метода __pow__
- Функция с *args.
- Непрерывная проверка в Python
- Управление User-Agent в Python
- Разрешение имен в Python
- Типы возвращаемых значений в Python
- Фильтрация списка чисел
- Работа с временем в Python
- Python Translator: создание локальных переводчиков
- Функция enumerate() в Python
- Измерение времени выполнения кода
- Получение обратного списка чисел
- Отправка POST-запроса в REST API
- Объединение строк с помощью метода join
- Enum в Python
- Метод getitem для доступа к элементам последовательности
- Метод Enumerate() для списков
- Метод clear для коллекций
- Тестирование времени с Freezegun
- Фильтрация списка от «ложных» значений
- Ограничение итераций в Python
- Поиск индексов подстроки
- Удаление элемента из списка в Python
- Инверсия списка и строки
- Преобразование регистра символов
- Операторы сравнения в Python
- Создание виртуальной среды
- Форматирование данных с помощью pprint
- Функция enumerate() — Python
- Форматирование строк с f-строками
- Мощь вложенных функций в Python
- Создание словарей в Python
- Анонимные функции Lambda
- Особенности ключей словаря в Python
- JSON в Python: модуль, dump, dumps, load
- Преобразование чисел в Python
- Переменные в Python
- Передача параметров в Python
- Сглаживание списка
- Выражения-генераторы в Python
- Применение функции к списку
- Работа с Colorama
- Создание класса в Python
- Функции all и any в Python















