Я понимаю, что встроенный sorted
имеет аргумент key
, который используется для сортировки по альтернативному ключу.Я также понимаю, что лямбда - это одна строка, которая возвращает вычисленное выражение.
Так что я могу сделать это:
>>> tuples = [(1, 'd'), (2, 'b'), (4, 'a'), (3, 'c')]
>>> sorted(tuples, key=lambda x: x[1])
[(4, 'a'), (2, 'b'), (3, 'c'), (1, 'd')]
Может кто-нибудь объяснить мне, почему мы получаем результаты с -5,5 в конце списка?
>>> print(sorted(range(-5,6), key=(lambda x: x*x)))
[0, -1, 1, -2, 2, -3, 3, -4, 4, -5, 5]
Исходя из моего понимания, лямбда возвращает значения в диапазоне от -25 до 25. Как именно она используется для получения этого вывода?