Курс 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
- Оптимизация гиперпараметров с Scikit Optimize
- Отрицательные индексы списков в Python
- Создание словарей и множеств в Python
- Combobox в Tkinter
- Изменяемые и неизменяемые объекты
- Модуль itertools: комбинации и перестановки
- Декоратор проверки активности
- Локальные переменные.
- Справка по импортированным модулям
- Метод setdefault() в Python
- Работа с эмодзи в Python
- Оператор (*) в Python
- Генератор бросков кубиков
- Переименование файлов в Python
- Генерация случайных чисел Python
- Вычисление натуральных логарифмов в NumPy
- Показ всплывающих окон Tkinter
- Цепные операции в Python
- Функция map() и ленивая оценка
- Руководство по библиотеке pydantic
- Создание словаря с значением по умолчанию
- Преобразование строк в числа в Python
- Работа с PosixPath() в Python
- Оператор «or» в Python
- Функция reduce() в Python
- Логирование с Logzero: ротация файла
- Функции высшего порядка в Python
- Оптимизация памяти с __slots__
- Определение объема памяти объекта
- Классы данных в Python
- Определение объема памяти объекта
- Работа с дробями в Python
- Управление импортом в Python
- Множественные конструкторы в Python
- Оператор @ для умножения матриц
- Поиск HTML-элементов с BeautifulSoup
- Запрос DELETE с библиотекой requests
- Декораторы с @wraps
- IPython и Jupyter Notebook: руководство
- Управление памятью в numpy.
- Метод count() для списков
- Модуль math: константы π и e
- Метод pop() списка
- Определение индекса элемента списка
- Оператор break в Python
- Работа с deque из collections
- Функция с *args.















