Курс Python → Создание вложенных циклов for
Для создания вложенных циклов for, где циклы идут по независимым итераторам, мы используем следующий синтаксис: [expression for x in iter1 for y in iter2]. Этот синтаксис позволяет нам сгенерировать одномерную структуру, используя данные из двух итераторов.
Например, предположим, у нас есть два списка, один содержит имена студентов, а другой их оценки за экзамен. Мы можем использовать вложенные циклы for для создания списка кортежей, где каждый кортеж будет содержать имя студента и его оценку. Это можно сделать следующим образом:
students = ['Анна', 'Петр', 'Мария']
grades = [85, 92, 78]
student_grades = [(student, grade) for student in students for grade in grades]
print(student_grades)
В результате выполнения этого кода мы получим список кортежей, где каждый кортеж содержит имя студента и его оценку. Это позволяет нам объединить данные из двух итераторов в одну структуру данных, что может быть полезно при обработке и анализе данных.
Использование вложенных циклов for с двумя независимыми итераторами позволяет нам легко и эффективно работать с данными, которые хранятся в разных источниках или форматах. Этот подход позволяет нам генерировать новые структуры данных на основе существующих данных, что может быть полезно во многих сценариях программирования на Python.
Другие уроки курса "Python"
- Генераторы данных
- Декоратор для группы пользователей в Django
- Сравнение объектов в Python
- Оператор zip в Python
- Поиск индекса элемента
- Нахождение хеша для бесконечности и NaN в Python
- Принципы SRP и OCP
- Поиск индексов в списке
- Генераторы в Python
- Вакансии в Nebius
- Оператор continue в Python
- Возвращение нескольких значений
- Функции any() и all() в Python
- Модуль itertools: комбинации и перестановки
- Python: Splat-оператор и splatty-splat
- Форматирование строк в Python
- F-строки в Python 3.8
- Вычисление натуральных логарифмов в NumPy
- Метод repr() в Python
- Модуль antigravity: генерация координат
- Python 3.12: Псевдонимы типов
- Работа с zip-архивами в Python
- Блок else в циклах Python
- Beautiful Soup — извлечение данных из HTML
- Метод __irshift__ для Python
- Структура данных deque в Python
- Очистка данных в Python
- Счетчик ссылок в Python
- Многопроцессорное программирование в Python
- Настройка вывода в Numpy
- Проблема сравнения словарей
- Переопределение метода __floordiv__
- Операция += для списков
- Функция zip() — объединение последовательностей
- Открытие и запись файлов
- Метод rmatmul для обратного матричного умножения
- Проверка условий: all и any
- Конкатенация строк с помощью join()
- Мониторинг работы программы Py-spy
- Работа с прокси в Python
- Подсчет элементов в Python
- Таймер обратного отсчета
- Передача словаря через **kwargs















