Где использование lambda обычно оправдано и не ухудшает читаемость?

Alist(map(lambda x: x * 2 + 1, items))
Blist(filter(lambda x: x > 0 and x < 10, items))
Cany(map(lambda x: x > 0 and x < 10, items))
Dsorted(users, key=lambda u: u['last_login'])
Правильный ответ. Короткая lambda уместна как ключ сортировки или агрегации: одна строка локально объясняет, по какому полю работаем.

Разбор

sorted(users, key=lambda u: u['last_login']) — типичный случай, где lambda действительно делает код короче и понятнее: вместо именования отдельной функции из одной строки. В вариантах с map()/filter()/any() те же операции лаконичнее выражаются через списочное включение или генератор: [x * 2 + 1 for x in items], [x for x in items if 0 < x < 10] и any(0 < x < 10 for x in items). Там lambda добавляет лишнюю обёртку, а в варианте с sorted() — действительно уместна.

Проверь себя · 1/3разбор после ответа
Нужно проверить, что все значения в списке prices строго положительные. Какое выражение вернёт True только если каждый элемент больше нуля?
Тренировать Python в Telegram

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