Курс Python → Сортировка с параметром key
При использовании параметра key при сортировке в Python, перед тем, как сравнивать два элемента списка, к ним применяется функция, которая изменяет элементы перед сравнением. Например, если у вас есть список объектов и вы хотите отсортировать их по какому-то критерию, вы можете использовать параметр key для указания функции, которая будет применяться к каждому элементу перед сравнением.
В вашем случае, вы использовали функцию prepare_item, которая меняла знак у стоимости перед сравнением. Однако, чтобы избежать создания дополнительных утилитарных функций, можно использовать лямбда-функцию для достижения того же эффекта. Лямбда-функция — это анонимная функция, которая может быть определена в одной строке и применена к каждому элементу перед сравнением.
items = [{'name': 'item1', 'price': 100}, {'name': 'item2', 'price': -50}, {'name': 'item3', 'price': 200}]
sorted_items = sorted(items, key=lambda x: abs(x['price']))
В приведенном примере, список items сортируется по абсолютному значению стоимости, используя лямбда-функцию. Это позволяет избежать использования дополнительной функции prepare_item и просто указывать ключевую функцию прямо внутри вызова sorted.
Использование лямбда-функций при сортировке с параметром key делает код более компактным и понятным, так как ключевая функция указывается непосредственно в месте, где она используется. Это удобно и эффективно при работе с большими объемами данных и требует меньше усилий по сравнению с созданием отдельной функции.
Другие уроки курса "Python"
- Функция rsplit() в Python
- Метод invert для побитового отрицания
- Установка Python3.7 и PIP
- Операторы присваивания в Python
- Работа с комплексными числами
- Метод get() в Python
- Преобразование регистра строк
- Установка и использование emoji
- Сортировка данных в Python
- Разделение строк методом split()
- Извлечение данных из JSON
- Фильтрация последовательности
- Получение списка файлов в директории с использованием os
- Defaultdict в Python
- Метод сравнения объектов в Python
- Сортировка в Python
- Поиск подстроки в строке
- Оператор «and» в Python
- Разделение строки на подстроки в Python
- Установка и использование модуля «howdoi»
- Форматирование строк в Python
- Списковый компрехеншен.
- Оператор is в Python
- Проверка на истинность объектов в Python
- Создание объекта времени
- Блок else в циклах Python
- Лямбда-функции для min/max
- Парсинг статей с Newspaper3k
- Генераторы в Python
- Лимиты на ресурсы Python
- Работа с байтовыми строками в Python
- Структура строк в Python
- Определение имен функций
- Разделение строки в Python
- Создание копии итератора
- Сортировка в Python
- Codecademy в Telegram
- Поиск элементов BeautifulSoup
- Упрощенный вывод данных в Python
- Удаление символа из строки
- HTTP-запросы с библиотекой Requests
- Генераторы в Python
- Создание словаря с значением по умолчанию
- Поиск уникальных и повторяющихся элементов
- Работа с комбинациями в Python.
- Срезы в Python















