Дан список батчей batches = [[101, 102], [], [103]]. Что вернёт выражение [x for batch in batches for x in batch]?

A[[101, 102], [], [103]]
B[101, 102, [], 103]
C[101, 102, 103]
D[101, 102]
Правильный ответ. Несколько for в list comprehension эквивалентны вложенным циклам и часто используются для «сплющивания» списка списков.

Разбор

Конструкция [x for batch in batches for x in batch] означает: сначала перебираем каждый batch из batches, затем перебираем элементы x внутри batch. Пустой список [] просто не добавляет элементов в результат.

Проверь себя · 1/3разбор после ответа
Есть список строк raw = ["10", "", "3"]. Нужно получить список целых чисел только из непустых строк. Какой вариант корректен и читаем?
Тренировать Python в Telegram

Ещё вопросы по теме «Генераторы списков и встроенные функции»