Sobes.tech
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, който е ефективен за реални данни и стабилен (запазва реда на равните елементи).