Python Sorted Key
В Python функция sorted() используется для сортировки элементов в итерируемом объекте в заданном порядке. Одним из аргументов функции sorted() является параметр key, который позволяет указать функцию, по которой будет происходить сортировка.
Функция, переданная в качестве значения параметру key, должна принимать один аргумент - элемент из исходной последовательности, и возвращать значение, по которому будет происходить сортировка. Функция sorted() будет применять данную функцию к каждому элементу последовательности перед сортировкой.
Пример:
Предположим, у нас есть список чисел, и мы хотим отсортировать его по неубыванию абсолютного значения. Для этого мы можем использовать параметр key функции sorted().
numbers = [5, -2, 10, -8, 3]
def abs_value(x):
return abs(x)
sorted_numbers = sorted(numbers, key=abs_value)
print(sorted_numbers)
# Результат: [-2, 3, 5, -8, 10]
В данном примере мы определили функцию abs_value(), которая возвращает абсолютное значение переданного числа. Затем мы передали эту функцию в качестве значения параметра key функции sorted(). Функция sorted() применила функцию abs_value() к каждому элементу списка numbers перед сортировкой, что позволило отсортировать список по неубыванию абсолютного значения чисел.
Таким образом, использование параметра key позволяет гибко управлять сортировкой элементов в Python и делает ее более настраиваемой.