Есть список словарей orders с ключами id и amount. Как получить сам заказ (словарь) с максимальным amount?

Amax(o["amount"] for o in orders)
Bmax(orders, key=lambda o: o["amount"])
Cmax([o["amount"] for o in orders])
Dsorted(orders, key=lambda o: o["amount"])[-1]["amount"]
Правильный ответ. max() может возвращать целый объект, если передать key= — функцию, которая говорит, по какому значению сравнивать.

Разбор

Если нужно получить не максимальное число, а сам объект (например, весь заказ), используйте max(orders, key=lambda o: o["amount"]). Варианты, которые берут max(...) по amount, возвращают только число, а не словарь заказа.

Проверь себя · 1/3разбор после ответа
Есть список email emails = ["a@x.com", "b@y.com", "c@x.com"]. Нужно получить множество доменов (часть после @). Какой вариант корректен?
Тренировать Python в Telegram

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