Курс 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"
- Сравнение объектов в Python
- Оператор «or» в Python
- Вывод сложных структур данных с помощью pprint
- Переменные в Python: сокращение гласных
- Объединение строк с помощью метода join
- Работа со стеком в Python
- Работа с необработанными строками
- Метод Event.wait() в Python
- Преобразование списка в словарь через генератор
- Работа со строками в Python
- Метод split() для разделения строк
- Сравнение def и lambda в Python
- Получение ID текущего процесса
- Очистка списка от False, None, 0, «»
- Методы работы со строками в Python
- Библиотека Rich: форматирование текста
- Выключение компьютера с помощью Python
- Хэш-функции и метод цепочек
- Метод join() для объединения элементов строки
- Работа с часовыми поясами в Python
- Метод join() для объединения элементов строки
- Атрибуты класса и экземпляра
- Преобразование символов с помощью map
- Ограничение ресурсов в Python
- Срезы в Numpy
- Логирование с Logzero
- Генераторные выражения и islice.
- Работа с изображениями Pillow
- Определение наиболее частого элемента с помощью collections.Counter
- Beautiful Soup — извлечение данных из HTML
- Проверка индексов коллекции
- Функция rsplit() в Python
- Лямбда-функции в цикле
- Проверка окончания строки с помощью str.endswith()
- Работа с классами данных
- Подсчет элементов в списке с Counter
- Python Ellipsis использование
- Основы работы со списками
- Строки в Python: апострофы и кавычки
- Создание и использование модулей в Python
- Разделение строк в Python
- Перемешивание списка с shuffle()
- Переопределение метода __and__
- Обновление ключей в Python
- Сериализация объектов в Python
- Группировка элементов в словарь
- Сортировка данных с лямбда-функциями
- Деление в Python
- Python: изменяемые и неизменяемые коллекции















