Sobes.tech
Junior — Middle

შეგიძლიათ ახსნათ, როგორ მუშაობს Python-ის ფუნქცია sorted და როგორ ივარგებს მონაცემებს?

sobes.tech AI

პასუხი AI-სგან

Python-ში sorted ფუნქცია იღებს იტერაბელ ობიექტს (მაგალითად, სია, ტუპლი, სტრიქონი) და აბრუნებს ახალ სორტირებულ სიას, არ ცვლის ორიგინალურ მონაცემებს.

ნაგულისხმევად, სორტირება ხდება ზრდად წესში, იყენებს ელემენტების ბუნებრივ წესს (მაგალითად, რიცხვითი ან ლექსიკოგრაფიული სტრიქონებისთვის).

სორტირების ქცევას შეიძლება შეცვალოთ პარამეტრებით:

  • 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 ალგორითმს, რომელიც ეფექტურია რეალურ მონაცემებზე და სტაბილურია (შეინარჩუნებს თანმიმდევრობას თანასწორ ელემენტებს).