Курс 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 reversed() функция
  2. Копирование объектов в Python
  3. Удаление элементов из списка
  4. Модуль pprint: улучшение вывода данных
  5. Генератор надежных паролей
  6. Обработка элементов в Python
  7. Сглаживание списка
  8. Декоратор Ajax required
  9. Участие в сообществе @selectel
  10. Использование эмодзи в Python
  11. Генераторы данных
  12. Модуль Operator в Python
  13. Перетасовка списков в Python
  14. Python Метод sleep() из time
  15. Разница между датами
  16. Python groupby() из itertools: работа с повторяющимися элементами
  17. Сортировка и разворот списка
  18. Инверсия списка и строки в Python
  19. Освобождение памяти в Python
  20. Расчет времени выполнения кода
  21. Ограничение итераций в Python
  22. Вычисление натурального логарифма в NumPy
  23. Замена переменных в Python
  24. Работа с *args и **kwargs в Python
  25. Импорт объектов из модулей
  26. Оптимизация параметров в Python
  27. Подсчет частоты элементов с Counter
  28. Обработка исключений
  29. Декоратор total_ordering для сравнения объектов
  30. Списковое включение в Python
  31. Отправка поздравлений по дню рождения
  32. Установка и использование pyshorteners
  33. Расчет времени выполнения программы
  34. Проверка переменных окружения в Python
  35. Beautiful Soup — извлечение данных из HTML
  36. Построение графиков в Matplotlib
  37. Сортировка данных с лямбда-функциями
  38. Подписка на @SelectelNews
  39. Работа с Requests для HTTP-запросов
  40. 9 уловок для чистого кода
  41. Enum в Python: создание и использование перечислений
  42. Чтение бинарного файла в Python.
  43. Форматирование строк в Python
  44. Работа с библиотекой xkcd
  45. Создание виртуальной среды
  46. Управление асинхронными задачами на Python.

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