Как отсортировать список словарей python: легкое руководство с примерами и объяснениями для начинающих

Чтобы отсортировать список словарей в Python, можно использовать функцию sorted() и передать в нее список словарей и ключ сортировки.

list_of_dicts = [{'name': 'Alice', 'age': 25}, {'name': 'Bob', 'age': 30}, {'name': 'Charlie', 'age': 20}]

sorted_list = sorted(list_of_dicts, key=lambda x: x['age'])

print(sorted_list)

В этом примере список словарей list_of_dicts сортируется по ключу "age". Результирующий отсортированный список сохраняется в переменной sorted_list. Затем его можно вывести с помощью функции print().

Детальный ответ

Как отсортировать список словарей в Python?

Отсортировать список словарей в Python можно с помощью функции sorted() и параметра key, который принимает функцию, определяющую по какому ключу будет производиться сортировка.

Предположим, у нас есть список словарей с информацией о студентах:


students = [
    {"name": "Алексей", "age": 20, "score": 95},
    {"name": "Мария", "age": 19, "score": 85},
    {"name": "Иван", "age": 21, "score": 90}
]
    

Чтобы отсортировать список словарей по ключу "score" в порядке возрастания, можно использовать следующий код:


sorted_students = sorted(students, key=lambda x: x['score'])
    

Результат будет следующим:


[
    {"name": "Мария", "age": 19, "score": 85},
    {"name": "Иван", "age": 21, "score": 90},
    {"name": "Алексей", "age": 20, "score": 95}
]
    

Если нужна сортировка в порядке убывания, можно использовать параметр reverse=True:


sorted_students = sorted(students, key=lambda x: x['score'], reverse=True)
    

Результат будет следующим:


[
    {"name": "Алексей", "age": 20, "score": 95},
    {"name": "Иван", "age": 21, "score": 90},
    {"name": "Мария", "age": 19, "score": 85}
]
    

Также возможна сортировка по другим ключам словаря. Например, чтобы отсортировать список студентов по возрасту:


sorted_students = sorted(students, key=lambda x: x['age'])
    

Результат будет следующим:


[
    {"name": "Мария", "age": 19, "score": 85},
    {"name": "Алексей", "age": 20, "score": 95},
    {"name": "Иван", "age": 21, "score": 90}
]
    

Обратите внимание, что функция sorted() возвращает новый отсортированный список, не изменяя исходный список.

Заключение

Теперь вы знаете, как отсортировать список словарей в Python. С помощью функции sorted() и параметра key можно задать ключ сортировки и получить новый отсортированный список. Это может пригодиться при обработке данных, где каждый элемент представлен словарем.

Видео по теме

Как отсортировать список словарей в python?

Как отсортировать словарь Python. Сортировка словаря по значениям

Python с нуля | Словари в Python | Методы словарей, перебор словарей в Python

Похожие статьи:

Как определить, существует ли страница Python?

Узнайте, что такое plot в Python и как использовать его в визуализации данных!

Ожидаемая продолжительность жизни королевских питонов: факты и статистика

Как отсортировать список словарей python: легкое руководство с примерами и объяснениями для начинающих

Как установить Python на Linux и начать программировать

🔓 Как открыть файл с компьютера в Питоне? Учимся работать с файлами в Python!

🔎 Откройте для себя, где находится Python! 🌍