Junior — Middle
Можете ли да обясните как работи функцията sorted в Python и как сортира данните?
sobes.tech AI
Отговор от AI
Функцията sorted в Python приема итеративен обект (например списък, кортеж, низ) и връща нов сортиран списък, без да променя оригиналните данни.
По подразбиране, сортирането се извършва във възходящ ред, използвайки естествения ред на елементите (например, числов или лексикографски за низове).
Може да промените поведението на сортирането чрез параметрите:
key— функция, която се прилага към всеки елемент за получаване на стойността, по която ще се сортира.reverse— булев параметър, ако еTrue, сортира в низходящ ред.
Пример:
numbers = [5, 2, 9, 1]
sorted_numbers = sorted(numbers) # [1, 2, 5, 9]
words = ['apple', 'banana', 'cherry']
sorted_words = sorted(words, key=len) # сортиране по дължината на думата
sorted_desc = sorted(numbers, reverse=True) # [9, 5, 2, 1]
Python използва алгоритъма Timsort, който е ефективен за реални данни и стабилен (запазва реда на равните елементи).