Понятия итерируемых объектов и списковых включений были объединены в инструмент — генераторные выражения. Синтаксически они похожи на нормальные списковые включения и поддерживают весь их синтаксис, в том числе фильтры if и вложение циклов, но они помещаются в круглые скобки, а не в квадратные (подобно кортежам объемлющие круглые скобки часто необязательны):
>>> (х ** 2 for х in range(4)) # Генераторное выражение создает итерируемый объект
... <generator object <genexpr> at 0x10250ab50>
Для принудительного вырабатывания всех результатов сразу можно использовать list():
>>> list(x ** 2 for х in range(4))
... [О, 1, 4, 9]