Курс 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"

  1. Функция rsplit() в Python
  2. Метод invert для побитового отрицания
  3. Установка Python3.7 и PIP
  4. Операторы присваивания в Python
  5. Работа с комплексными числами
  6. Метод get() в Python
  7. Преобразование регистра строк
  8. Установка и использование emoji
  9. Сортировка данных в Python
  10. Разделение строк методом split()
  11. Извлечение данных из JSON
  12. Фильтрация последовательности
  13. Получение списка файлов в директории с использованием os
  14. Defaultdict в Python
  15. Метод сравнения объектов в Python
  16. Сортировка в Python
  17. Поиск подстроки в строке
  18. Оператор «and» в Python
  19. Разделение строки на подстроки в Python
  20. Установка и использование модуля «howdoi»
  21. Форматирование строк в Python
  22. Списковый компрехеншен.
  23. Оператор is в Python
  24. Проверка на истинность объектов в Python
  25. Создание объекта времени
  26. Блок else в циклах Python
  27. Лямбда-функции для min/max
  28. Парсинг статей с Newspaper3k
  29. Генераторы в Python
  30. Лимиты на ресурсы Python
  31. Работа с байтовыми строками в Python
  32. Структура строк в Python
  33. Определение имен функций
  34. Разделение строки в Python
  35. Создание копии итератора
  36. Сортировка в Python
  37. Codecademy в Telegram
  38. Поиск элементов BeautifulSoup
  39. Упрощенный вывод данных в Python
  40. Удаление символа из строки
  41. HTTP-запросы с библиотекой Requests
  42. Генераторы в Python
  43. Создание словаря с значением по умолчанию
  44. Поиск уникальных и повторяющихся элементов
  45. Работа с комбинациями в Python.
  46. Срезы в Python

Marketello читают маркетологи из крутых компаний