Junior — Middle
Kas saaksite selgitada, kuidas töötab Pythonis funktsioon sorted ja kuidas see andmeid sorteerib?
sobes.tech AI
Vastus AI-lt
Pythonis sorted funktsioon võtab sisendiks korduvobjekti (näiteks nimekirja, tupi, stringi) ja tagastab uue sorteeritud nimekirja, muutmata algandmeid.
Vaikimisi toimub sortimine kasvavas järjekorras, kasutades elementide loomulikku järjekorda (näiteks numbriline või leksikograafiline järjekord stringidele).
Sortimise käitumist saab muuta parameetritega:
key— funktsioon, mis rakendub igale elemendile, et saada väärtus, mille järgi sorteerida.reverse— boolean parameeter, kuiTrue, sorteeritakse kahanevas järjekorras.
Näide:
numbers = [5, 2, 9, 1]
sorted_numbers = sorted(numbers) # [1, 2, 5, 9]
words = ['apple', 'banana', 'cherry']
sorted_words = sorted(words, key=len) # sorteerimine sõnade pikkuse järgi
sorted_desc = sorted(numbers, reverse=True) # [9, 5, 2, 1]
Python kasutab Timsort algoritmi, mis on tõhus reaalsete andmete puhul ja stabiilne (säilitab võrdsete elementide järjekorra).