Генераторы списков, множеств и словарей
Пишите краткий и понятный код с помощью генераторов коллекций
«Генераторы списков, множеств и словарей» — бесплатный урок Python Academy на CoddyKit. Это урок 4 из 5. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Python Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Python Academy содержит 5 уроков всего.
Введение во включения
Введение во включения
Включения — это краткий и элегантный способ создавать списки, множества и словари в Python. Они позволяют выполнять операции и преобразования в одной строке кода.
В этом уроке вы узнаете, как эффективно использовать списковые включения, включения множеств и словарные включения.

Что такое включения
Что такое включения
Включения — это краткий способ создавать новые коллекции из существующих итерируемых объектов. По сравнению с циклами они обеспечивают более понятный и соответствующий принципам Python подход.
# Basic list comprehension
squares = [x * x for x in range(5)]
print(squares) # Outputs: [0, 1, 4, 9, 16]Списковые включения
Списковые включения
Списковые включения позволяют создать список в одной строке:
# List comprehension example
numbers = [1, 2, 3, 4, 5]
doubled = [n * 2 for n in numbers]
print(doubled) # Outputs: [2, 4, 6, 8, 10]Включения множеств
Включения множеств
Включения множеств похожи на списковые включения, но создают множества:
# Set comprehension example
numbers = [1, 2, 2, 3, 4, 4, 5]
unique_squares = {n * n for n in numbers}
print(unique_squares) # Outputs: {1, 4, 9, 16, 25}Словарные включения
Словарные включения
Словарные включения позволяют создать словарь в одной строке:
# Dictionary comprehension example
keys = ['a', 'b', 'c']
values = [1, 2, 3]
my_dict = {k: v for k, v in zip(keys, values)}
print(my_dict) # Outputs: {'a': 1, 'b': 2, 'c': 3}Добавление условий во включения
Добавление условий во включения
Во включения можно добавлять условия для фильтрации значений:
# Adding conditions to comprehensions
numbers = range(10)
even_numbers = [n for n in numbers if n % 2 == 0]
print(even_numbers) # Outputs: [0, 2, 4, 6, 8]Вложенные включения
Вложенные включения
Включения можно вкладывать друг в друга для работы с многомерными данными:
# Nested comprehension example
matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
flattened = [item for row in matrix for item in row]
print(flattened) # Outputs: [1, 2, 3, 4, 5, 6, 7, 8, 9]Производительность включений
Производительность включений
Включения работают быстрее традиционных циклов, поскольку оптимизированы на уровне C.
Распространённые ошибки при работе с включениями
Распространённые ошибки при работе с включениями
Вот некоторые ошибки, которых следует избегать:
- Использование включений для чрезмерно сложной логики.
- Создание вложенных включений, ухудшающих читаемость.
- Неиспользование выражений-генераторов для больших наборов данных.
Что мы узнали
Что мы узнали
В этом уроке вы узнали:
- Что такое включения и как они работают в Python.
- Как использовать списковые включения, включения множеств и словарные включения.
- Как добавлять условия и создавать вложенные включения.
- О преимуществах включений с точки зрения производительности.
Отлично! Перейдём к следующей теме.

Часто задаваемые вопросы
Урок «Генераторы списков, множеств и словарей» бесплатный?
Да — полный текст урока «Генераторы списков, множеств и словарей» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Python Academy, подпишись на CoddyKit PRO. Курс Python Academy содержит 5 уроков всего.
Чему я научусь в уроке «Генераторы списков, множеств и словарей»?
Пишите краткий и понятный код с помощью генераторов коллекций Ты практикуешь Python Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать Python Academy?
Предыдущий опыт не требуется. Python Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 4 из 5.
Сколько времени занимает урок «Генераторы списков, множеств и словарей»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке Python Academy?
Да. Каждый урок Python Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Декораторы
- Генераторы
- Менеджеры контекста (операторы with)
- Генераторы списков, множеств и словарей
- Итераторы и итерируемые объекты