Курс Python → Сортировка и обратный порядок

Sorted метод в Python всегда возвращает отсортированный список. Однако, при сравнении списков и кортежей, результат всегда будет False. Это происходит из-за того, что списки и кортежи сравниваются по ссылке на объект, а не по их содержимому. Поэтому, даже если два списка или кортежа имеют одинаковые элементы, они все равно будут считаться разными объектами.

В отличие от sorted, метод reversed возвращает итератор, а не список. Почему так происходит? Дело в том, что сортировка требует изменения итератора на месте или использования дополнительного контейнера, такого как список. В то время как реверсирование может просто работать путем повторения от последнего индекса к первому без создания новых объектов.

numbers = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3]
sorted_numbers = sorted(numbers)
print(sorted_numbers)  # Output: [1, 1, 2, 3, 3, 4, 5, 5, 6, 9]

reversed_numbers = reversed(numbers)
print(list(reversed_numbers))  # Output: [3, 5, 6, 2, 9, 5, 1, 4, 1, 3]

Используя sorted, мы можем получить отсортированный список, который можно использовать для дальнейшей обработки данных. С другой стороны, reversed возвращает итератор, который можно преобразовать в список для получения элементов в обратном порядке. Оба метода полезны в различных сценариях и помогают упорядочивать данные в Python.

Твои коллеги будут рады, поделись в

Автор урока

Дмитрий Комаровский
Дмитрий Комаровский

Автоматизация процессов
в КраснодарБанки.ру

Другие уроки курса "Python"

  1. Срез списка в Python
  2. Модуль Antigravity в Python 3
  3. Раздувающийся словарь в Python
  4. Открытие, чтение и закрытие файла
  5. Удаление и повторная вставка ключа в OrderedDict
  6. Создание списков в Python
  7. Метод rpow в Python
  8. Секреты Python
  9. Создание функций высшего порядка
  10. Создание лямбда-функций
  11. Класс-оболочка для словарей
  12. Освоение Python
  13. Импортирование в Python
  14. Лямбда-функции в Python
  15. Преобразование кортежа в словарь.
  16. Преобразование данных в Python
  17. Расчет времени выполнения
  18. Работа с срезами в Python
  19. Подписка на Kaspersky Team
  20. Преобразование range в итератор
  21. Вычисление фазы комплексного числа
  22. Поиск самого длинного слова в списке с использованием max()
  23. Удаление элемента по индексу в Python
  24. Списки в Python: основы
  25. Создание итератора
  26. Определение объема памяти объекта
  27. Поиск наиболее частого элемента в списке
  28. Реверс строки в Python
  29. Перемещение и удаление файлов в Python
  30. Вложенные циклы в Python
  31. Использование подчеркивания в REPL
  32. Гибкие функции Python
  33. Установка пакетов с помощью pip
  34. Копирование и вставка текста в Python
  35. Создание детектора плагиата
  36. Управление контекстом с помощью декоратора contextmanager
  37. Обработка исключений в Python
  38. Строковое представление объектов
  39. Методы Python для работы с данными
  40. Тестирование с responses
  41. Многострочные комментарии в Python
  42. Работа со словарями с defaultdict из collections
  43. Определение размера папок в Python
  44. Метод get для словарей
  45. Простой калькулятор Python
  46. Методы split() и join() — Python строк.

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