Курс Python → Сортировка с помощью key
Функция sorted() в Python используется для сортировки элементов итерируемого объекта. По умолчанию она сортирует его по возрастанию, но можно указать параметр key, чтобы определить функцию сортировки.
Параметр key позволяет указать функцию, по которой будет производиться сортировка. Например, если у нас есть список словарей и мы хотим отсортировать его по значению определенного ключа, мы можем использовать key=lambda x: x['key'].
Если мы хотим отсортировать список объектов класса, то параметр key является обязательным. Без него будет вызвана ошибка TypeError. Например, если у нас есть класс с атрибутом name, то мы можем использовать key=lambda x: x.name.
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
people = [Person('Alice', 25), Person('Bob', 30), Person('Charlie', 20)]
sorted_people = sorted(people, key=lambda x: x.age)
print([person.name for person in sorted_people]) # ['Charlie', 'Alice', 'Bob']
В приведенном примере мы создаем список объектов класса Person, сортируем его по возрасту с помощью параметра key и выводим отсортированные имена.
Другие уроки курса "Python"
- Преобразование строки в число
- Работа с часовыми поясами в Python.
- Скрытие вывода данных
- Освоение Python
- Получение размера объекта с sys.getsizeof()
- Установка и использование Python-dateutil
- Python: цикл for и оператор присваивания
- Генераторы в Python
- Beautiful Soup — извлечение данных из HTML
- Компиляция регулярных выражений
- Пропуск начальных строк с помощью dropwhile()
- Метод Event.wait() в Python
- Списки в Python: основы
- Модуль sys: основы
- Эффективная конкатенация строк с использованием join()
- Создание пар из последовательностей
- Основные операции с Numpy
- Хешируемые ключи в Python
- Метод __int__ в Python
- Создание и удаление объектов
- Удаление файлов в Python
- Статическая типизация в Python
- Работа с геоданными с помощью geopy
- Работа со слайсами
- Сумма элементов списка
- PUT запрос для обновления данных
- Удаление ключа из словаря
- Изменяемые и неизменяемые объекты
- Поиск email
- Работа с zip()
- Combobox в Tkinter
- Оператор умножения для вектора
- Работа с географическими данными в Python
- Работа с утверждениями в Python
- Чтение и запись TOML-конфигов
- Регистрация на TenChat
- Работа с рекламными данными в Pandas
- Расчет времени выполнения программы
- Карта бомбоубежищ в Москве и Питере
- Объединение списков в строку
- capitalize() — изменение регистра первого символа строки
- Работа с изменяемыми коллекциями
- Функции map, filter и reduce
- Функция format() в Python
- Получение локальных переменных в Python
- Генерация строк с .join()















