Введение
Функции sort() и sorted() в Python являются полезными инструментами для сортировки элементов в списках. Они позволяют упорядочить элементы по возрастанию и убыванию. В данной статье рассмотрим различия между этими функциями и примеры их использования.
Функция sort() в Python
Функция sort() является методом списка и изменяет сам список, сортируя его элементы.
Пример:
numbers = [3, 1, 5, 2, 4]
numbers.sort()
print(numbers) # Вывод: [1, 2, 3, 4, 5]
Также у функции sort() есть аргумент reverse, по умолчанию равный False. Если указать его значение как True, то список будет отсортирован в обратном порядке:
numbers = [3, 1, 5, 2, 4]
numbers.sort(reverse=True)
print(numbers) # Вывод: [5, 4, 3, 2, 1]
Функция sorted() в Python
Функция sorted(), является встроенной функцией, которая создает новый отсортированный список и оставляет исходный список нетронутым.
Пример использования функции sorted():
numbers = [3, 1, 5, 2, 4]
sorted_numbers = sorted(numbers)
print(sorted_numbers) # Вывод: [1, 2, 3, 4, 5]
print(numbers) # Вывод: [3, 1, 5, 2, 4]
У функции sorted(), как и у функции sort() есть аргумент reverse, который отсортирует список в обратном порядке, если передать в него значение True:
numbers = [3, 1, 5, 2, 4]
sorted_numbers = sorted(numbers, reverse=True)
print(sorted_numbers) # Вывод: [5, 4, 3, 2, 1]
print(numbers) # Вывод: [3, 1, 5, 2, 4]
Отличие функция sort() и sorted() в Python
Как мы можем заметить, функция sort() изменяет исходный список, а функция sorted() создает новый отсортированный список. Поэтому, если нужно сохранить исходный порядок элементов, следует использовать функцию sorted().
Также стоит обратить внимание, что оба метода сортировки могут работать не только с числами, но и с другими типами данных, такими как строки:
fruits = ['яблоко', 'банан', 'вишня']
sorted_fruits = sorted(fruits)
print(sorted_fruits) # Вывод: ['банан', 'вишня', 'яблоко']
print(fruits) # Вывод: ['яблоко', 'банан', 'вишня']
fruits.sort()
print(fruits) # Вывод: ['банан', 'вишня', 'яблоко']
Заключение
В ходе статьи мы с Вами узнали разобрали как работают функции sort() и sorted() в Python и какие между ними различия. Надеюсь Вам понравилась статья, желаю удачи и успехов! 🙂
Мой Telegram канал
Мой YouTube канал
Курс по созданию телеграм-ботов на Python с фреймворком Aiogram