Упорядочивание массива словарей по возрастанию поля "age"

Используйте sorted(people, key=lambda person: person['age']). Функция создаст новый список, не меняя порядок исходного.

Короткий ответ

Что ответить на собеседовании

Используйте sorted(people, key=lambda person: person['age']). Функция создаст новый список, не меняя порядок исходного.

Подробный разбор

Ответ с пояснениями

Условие

Дан массив словарей, каждый из которых содержит ключ "age". Требуется отсортировать этот массив по возрастанию значений указанного ключа.

Пример 1: Ввод: [{'age': 30}, {'age': 10}, {'age': 34}, {'age': 32}] Вывод: [{'age': 10}, {'age': 30}, {'age': 32}, {'age': 34}]

people = [{'age': 30}, {'age': 10}, {'age': 34}, {'age': 32}]

Необходимо получить новый список, упорядоченный по ключу "age".

Ответ

Используйте sorted(people, key=lambda person: person['age']). Функция создаст новый список, не меняя порядок исходного.

people = [{'age': 30}, {'age': 10}, {'age': 34}, {'age': 32}]
ordered = sorted(people, key=lambda person: person['age'])

Результат: [{'age': 10}, {'age': 30}, {'age': 32}, {'age': 34}]. Сортировка стабильна: элементы с одинаковым возрастом сохранят взаимный порядок. Если новый список не нужен, можно вызвать people.sort(key=...), но тогда изменится исходный объект.

Копируется контейнер списка, а не сами словари: изменения полей через ordered будут видны и через people. Отсутствующий ключ вызовет KeyError; правила обработки пропущенного возраста следует задать отдельно.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее