Специализация
Python Backend Developer
Java Backend Developer
Node.js Backend Developer
Golang Backend Developer
React Frontend Developer
Выберите навыки
React
JavaScript
Git
Redux
Webpack
Сложность
1-3
4-6
7-8
9-10
Рейтинг вопросов
1
2
3
4
5
Подпишись на React Developer в телеграм
Что такое list comprehension?
List comprehension — это сокращённый синтаксис для создания списков на основе последовательностей. Он позволяет создавать новые списки, применяя условия и преобразования к элементам существующего списка или другой последовательности.
Чем list comprehension отличается от генераторов?
List comprehension — это компактный способ создания списков с помощью одного выражения. Отличается от генераторов тем, что:
Сразу создаёт весь список в памяти.
Генераторы лениво вычисляют элементы по одному (экономят память).
Можно ли с помощью comprehension создавать не только списки, и какие структуры поддерживаются?
Comprehension позволяет создавать не только списки. Также можно создавать множества, словари и генераторы. Тип структуры зависит от используемых скобок. Это удобный способ компактно сформировать коллекцию на основе другой последовательности.
Что означает запись comprehension в круглых скобках?
Если comprehension записан в круглых скобках, создаётся генератор, а не список. Генератор вычисляет значения по мере необходимости, а не сразу. Это экономит память. Такой объект можно перебирать, но нельзя индексировать как список.
Что произойдет, если генератор бесконечный и его использовать в list comprehension?
List comprehension создаёт список целиком в памяти. Если генератор бесконечный, построение списка никогда не завершится. В итоге программа будет либо работать бесконечно, либо упадёт по нехватке памяти. Поэтому бесконечные генераторы используют только в потоковой обработке или с ограничением количества элементов.
Рейтинг:
2
Сложность:
3
Рейтинг:
2
Сложность:
8
Рейтинг:
5
Сложность:
3
Рейтинг:
4
Сложность:
4
Рейтинг:
5
Сложность:
5