🧩 List comprehension (генератор списка) — это компактный способ создать список на основе другого итерируемого объекта (списка, строки, диапазона и т. д.) в одну строку.
Это не новый тип данных, а синтаксический сахар: он делает код короче и часто читаемее, чем цикл for.
Базовый синтаксис
[выражение for элемент in итерируемый_объект]
С условием
[выражение for элемент in итерируемый_объект if условие]
Примеры:
Квадраты чисел от 0 до 4
squares = [x**2 for x in range(5)]
# [0, 1, 4, 9, 16]
Только чётные числа
evens = [x for x in range(10) if x % 2 == 0]
# [0, 2, 4, 6, 8]
Вложенные циклы
pairs = [(x, y) for x in [1, 2] for y in ['a', 'b']]
# [(1, 'a'), (1, 'b'), (2, 'a'), (2, 'b')]
Порядок циклов такой же, как в обычных вложенных циклах: сначала внешний, потом внутренний.
Это не новый тип данных, а синтаксический сахар: он делает код короче и часто читаемее, чем цикл for.
Базовый синтаксис
[выражение for элемент in итерируемый_объект]
С условием
[выражение for элемент in итерируемый_объект if условие]
Примеры:
Квадраты чисел от 0 до 4
squares = [x**2 for x in range(5)]
# [0, 1, 4, 9, 16]
Только чётные числа
evens = [x for x in range(10) if x % 2 == 0]
# [0, 2, 4, 6, 8]
Вложенные циклы
pairs = [(x, y) for x in [1, 2] for y in ['a', 'b']]
# [(1, 'a'), (1, 'b'), (2, 'a'), (2, 'b')]
Порядок циклов такой же, как в обычных вложенных циклах: сначала внешний, потом внутренний.
Просмотры: 78