Отличие использования генераторов списков от стандартных циклов for при обработке числовых данных заключается в следующем:
- Генератор списков позволяет выполнять задачу в одну строчку, в то время как цикл for требует написания нескольких строк. 2
- Генератор списков более эффективен, в некоторых случаях он оказывается в два раза быстрее, чем цикл for. 2
- Генератор списков описывает результат, в то время как цикл for показывает, как получить результат. 1 Например, генератор говорит: «Результирующий список — это список чисел в диапазоне от 1 до 20». 1 Процедурное решение показывает, как получить результат: «Для каждого числа в диапазоне до 20 добавляем в список число». 1
Однако если нужно выполнить более одного простого условия, генератор списков не сможет справиться с этим без ущерба для удобочитаемости. 2