Есть список словарей: ``python users = [ {'name': 'Анна', 'age': 30}, {'name': 'Борис', 'age': 25} ] `` Как отсортировать его по возрасту?

Asorted(users, key='age'): передать имя ключа строкой
Busers.sort(key='age', reverse=False): имя ключа строкой
Cusers.sort_by('age', ascending=True): метод списка словарей
Dsorted(users, key=lambda u: u['age']): функция извлечения ключа
Правильный ответ. Параметр key в sorted() принимает функцию, которая извлекает значение для сортировки из каждого элемента.

Разбор

Вызов sorted(users, key=lambda u: u['age']) создаст новый список, отсортированный по значению ключа 'age'. Функция lambda u: u['age'] вызывается для каждого элемента и возвращает число, по которому идёт сортировка. Передать строку 'age' напрямую нельзя — key ожидает вызываемый объект. Альтернатива лямбде — operator.itemgetter('age') из стандартной библиотеки.

Проверь себя · 1/3разбор после ответа
Есть list из 100 000 заблокированных идентификаторов пользователя в переменной banned. Для каждого из миллиона событий нужно проверить, заблокирован ли пользователь. Как ускорить проверку?
Тренировать Python в Telegram

Ещё вопросы по теме «Коллекции и структуры данных»