Курс 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"
- Использование *args
- Python reversed() vs срез[::-1]
- Иерархия классов в Python
- Перевод текста с Python Translator
- Преобразование данных в Python
- Деление в Python
- Стать Python-разработчиком
- Генераторы списков в Python
- Конкатенация строк в Python
- Метод join() для объединения строк
- Обработка исключений в Python
- Функции в одну строку
- Импорт модулей в Python 3.12
- Операции с датами в Python
- Ограничение итераций в Python
- Генератор надежных паролей
- Использование функции product
- Поиск элементов BeautifulSoup
- Итераторы с потерямиZIP
- Модуль itertools: эффективная работа с итераторами
- Работа с срезами в Numpy
- Метод clear для коллекций
- Операции с числами в Python
- Работа с классами данных
- Избегание циклических зависимостей классов в Python
- Получение локальных переменных в Python
- Настройка шрифта и цвета в Tkinter
- Оператор walrus в Python
- Работа с итераторами через срезы
- Форматирование вывода списков
- Работа с модулем Calendar
- Расчет времени выполнения
- Участие в LP стейкинге Waves
- Декоратор для группы пользователей в Django
- Управление асинхронными задачами с помощью Semaphore
- Работа со строками в Python
- Фильтрация списков с itertools
- Метод splitlines() для разделения строк
- Конвертация коллекций в Python.
- Обход элементов в Python
- Создание обратного итератора
- lru_cache оптимизация функций
- Преобразование символов в нижний регистр
- Поиск подстроки в строке
- Аннотации типов в Python
- Модуль math: основные функции
- Логические значения в Python















