Курс 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"
- Преобразование в float
- Оператор «or» в Python
- Создание итератора
- Символ подчеркивания в Python
- Список переменных в Python
- IPython и Jupyter Notebook: руководство
- Проверка окончания строки с помощью str.endswith()
- Многоточие в Python
- Подсказки типов в Python
- Использование функции product
- Генерация тестовых данных с factory_boy
- Цепные операции в Python
- Определение размера папок в Python
- Библиотека sh: удобные команды терминала
- Создание списков в Python
- Декодирование байтов в строку
- Область видимости переменных
- Передача неизвестных аргументов в Python.
- Упрощение условных выражений с тернарным оператором
- Методы list в Python
- Инициализация структур данных
- Метод __index__ в Python
- Метод get для словаря
- Оптимизация гиперпараметров в Python
- Разделение строки с помощью split()
- Отладка утечек памяти в Python
- Создание объекта timedelta
- Отправка поздравлений по дню рождения
- Решение переменной Шредингера
- Разбиение текста в Python
- Функция map() в Python
- Solidity для DeFi Ethereum
- Оператор @ для умножения матриц
- Создание итерируемых объектов
- split() без разделителя
- Вложенные функции в Python
- Фильтрация элементов с помощью islice
- Поиск HTML-элементов с BeautifulSoup
- Основные операции с библиотекой Numpy
- CSV строка разделение в Python
- Установка и загрузка Instaloader
- Асинхронное выполнение задач в процессах
- Избегайте пустого списка
- Работа с кортежами в Python
- Парсинг статей с Newspaper3k
- Изменение IP-адреса в Python
- Обработка исключений в Python















