Python сортировка массива: как отсортировать элементы с помощью Python?

В Python есть несколько способов сортировки массива или списка. Рассмотрим некоторые из них:

1. Сортировка методом sorted()

Метод sorted() возвращает новый отсортированный список, не меняя исходный. Он может работать с любыми итерируемыми объектами, в том числе с массивами.

Пример:


arr = [7, 3, 9, 2, 1, 5]
sorted_arr = sorted(arr)
print(sorted_arr) # [1, 2, 3, 5, 7, 9]

2. Сортировка методом sort()

Метод sort() сортирует исходный список прямо на месте, то есть меняет его. Он также может работать с любыми итерируемыми объектами.

Пример:


arr = [7, 3, 9, 2, 1, 5]
arr.sort()
print(arr) # [1, 2, 3, 5, 7, 9]

3. Сортировка с использованием ключа

Ключом сортировки может быть функция, которая принимает элемент списка и возвращает значение, по которому будет происходить сортировка. Например, мы можем отсортировать числа в списке по их абсолютным значениям:

Пример:


arr = [7, -3, 9, -2, 1, -5]
sorted_arr = sorted(arr, key=abs)
print(sorted_arr) # [1, -2, -3, 5, 7, 9]

4. Сортировка с использованием lambda-функций

В Python можно использовать lambda-функции для определения ключа сортировки. Например, мы можем отсортировать строки в списке по их длине:

Пример:


arr = ['banana', 'apple', 'pear', 'orange']
sorted_arr = sorted(arr, key=lambda x: len(x))
print(sorted_arr) # ['pear', 'apple', 'banana', 'orange']

5. Сортировка с использованием оператора itemgetter

Стандартный модуль operator содержит функцию itemgetter, которая может использоваться для извлечения элементов из списка. Например, мы можем отсортировать список кортежей по второму элементу каждого кортежа:

Пример:


from operator import itemgetter
arr = [(2, 3), (1, 2), (4, 1), (3, 4)]
sorted_arr = sorted(arr, key=itemgetter(1))
print(sorted_arr) # [(4, 1), (1, 2), (2, 3), (3, 4)]

Похожие вопросы на: "python сортировка массива "

Стандартная библиотека шаблонов (STL) в C++
X-Forwarded: что это и как она работает?
Python OpenCV: руководство для начинающих и профессионалов
Как преобразовать данные в формат CSV с помощью библиотеки Pandas
Cake Speed Up – ускорение приготовления тортов без потери качества!
HTML Якорь: Виды, Описание и Использование на Сайте
SScanf - функция считывания данных из строки в Си
Как создать кнопку в HTML. Практичный гид для новичков
istringstream: преобразование строк в поток данных в C++
Действия HTML: создание интерактивных веб-страниц