Курс 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. Переворот строки
  2. Создание словарей с defaultdict
  3. Синтаксис переменных цикла в Python
  4. Операторы Splat и splatty-splat
  5. Преобразование числа в восьмеричную строку
  6. Переворот строки с использованием цикла
  7. Передача параметров в Python
  8. Проверка кортежей.
  9. Экспорт данных с помощью writefile
  10. Измерение потребления памяти при сортировке
  11. Хранение переменных в словаре.
  12. Оптимизация памяти с slots
  13. Преобразование данных в Python
  14. Функциональное программирование.
  15. Декодирование байтов в строку
  16. Сохранение и загрузка модели в PyTorch
  17. Распаковка аргументов в Python
  18. Работа с коллекциями Python
  19. Изменение регистра данных
  20. Игра «Виселица» на Python
  21. Метод gt в Python
  22. Создание namedtuple списком полей
  23. Отрицательные индексы списков в Python
  24. Операции с кортежами
  25. Блок else в обработке исключений
  26. Генерация случайных чисел в Python
  27. Списки в Python: основы
  28. Применение команды break
  29. Заказ карты Тинькофф Black
  30. Метод remove() для удаления элемента из списка
  31. Функции высшего порядка в Python
  32. Стать Python-разработчиком
  33. Функции map, filter и reduce
  34. Профилирование с Pandas
  35. Работа с байтовыми строками в Python
  36. Аргумент по умолчанию
  37. Измерение времени выполнения кода
  38. Функции с дополнением
  39. Работа с модулем os в Python
  40. Декораторы в Python
  41. Numpy: использование Ellipsis
  42. Работа с эмодзи в Python
  43. Проверка версии Python
  44. Combobox в Tkinter
  45. Комментарии в Python
  46. Замена текста с re.sub()
  47. Логирование с Logzero

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