Курс 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. Модуль sys: основы
  2. Сглаживание списка
  3. Метод pop() списка
  4. Проблема с изменяемыми аргументами
  5. Работа с набором данных CIFAR10 в PyTorch
  6. Установка и обучение ChatterBot
  7. Переопределение метода __lshift__
  8. Логирование с Logzero: ротация файла
  9. Комплексные числа в Python
  10. ROT13 Шифр Цезаря в Python
  11. Транспонирование матрицы
  12. Округление банкира в Python
  13. Создание словарей и множеств в Python
  14. Получение пути к текущему скрипту с помощью os
  15. Цикл while в Python
  16. Работа с комплексными числами
  17. Добавление Progressbar в Python
  18. Создание треугольника Паскаля
  19. Функция с **kwargs в Python
  20. Передача аргументов в Python
  21. Изменение объектов в Python
  22. Работа с deque из collections
  23. Курс Data Scientist в медицине
  24. Функциональное программирование в Python
  25. Форматирование вывода списков
  26. capitalize() — изменение регистра первого символа строки
  27. Получение комбинаций в Python
  28. Обратное распространение ошибки
  29. Big O оптимизация
  30. Распаковка элементов массива
  31. Функции высшего порядка в Python
  32. Поиск наиболее частого элемента в списке
  33. Создание списков в Python
  34. Анонимные функции в Python
  35. Путь к интерпретатору Python
  36. Управление ресурсами с контекстными менеджерами
  37. Операторы присваивания в Python
  38. Преобразование типов данных в set comprehension
  39. Возврат нескольких значений
  40. Обработка ошибок в Python
  41. Множественные конструкторы в Python
  42. Философия Python
  43. Замена символов в Python
  44. Преобразование чисел в Python
  45. Метод lt для сортировки объектов
  46. Генерация UUID в Python
  47. Запрос пароля с помощью getpass
  48. Преобразование Excel в PDF с Spire.XLS
  49. Логические значения в Python

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