Встречается на собеседованиях • сегодня
Что такое comprehension в Python
Comprehension — это компактный способ создания коллекций (списков, словарей, множеств) на основе итерируемых объектов. В Python существуют:
- List comprehension
python
numbers = [x**2 for x in range(10) if x % 2 == 0] # [0, 4, 16, 36, 64]- Dict comprehension
python
squares = {x: x**2 for x in range(5)} # {0: 0, 1: 1, 2: 4, 3: 9, 4: 16}- Set comprehension
python
unique = {x for x in 'abracadabra' if x not in 'abc'} # {'d', 'r'}- Generator expression (аналог для генераторов)
python
gen = (x*2 for x in [1, 2, 3])Особенности:
- Читаемость (но может ухудшиться при сложных условиях)
- Производительность обычно выше, чем у циклов
- Поддерживает вложенные циклы и условия
- Не создает переменных в текущем namespace (в отличие от цикла for)
Используйте там, где логика простая. Для сложных преобразований лучше обычные циклы.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы