logo

Python'da bir sözlük nasıl sıralanır

Python sözlüğü, anahtar-değer formunda saklanan verilerin toplanmasıdır. Her anahtar değeriyle ilişkilendirilir. Doğası gereği değişkendir; bu, verileri oluşturulduktan sonra değiştirebileceğimiz anlamına gelir.

Verilerin sırasız bir şekilde toplanmasıdır ve yinelenen değerlerin saklanmasına izin verir, ancak anahtarın benzersiz olması gerekir.

Linux ana bilgisayarı

Sözlük, küme parantezleri {} kullanılarak bildirilir ve anahtar/değer çifti virgülle ayrılır.

 dict1 = {'name': 'Devansh', 'age': 22, 'Rollno':90014} print(dict1) 

Çıktı:

Sözlüğü neden sıralamanız gerekiyor?

  • Listenin arama süresi karmaşıklığı O(n)'dir ve sözlüğün arama süresi karmaşıklığı 0(1)'dir, bu da sözlüğün listeden daha hızlı olmasını sağlar. Sözlük ihtiyaç duyulduğunda liste için yerinde kullanılabilir.
  • Sıralama, veri yapısıyla çalışırken verileri verimli bir şekilde analiz etmemizi sağlar.
  • Sıralanmış bir sözlük, karmaşık işlemleri ele almanın daha iyi anlaşılmasını sağlar.

Sözlüğü sıralamanın çeşitli yollarını anlayalım.

  • Tuşlara göre sıralama
  • Değerlere göre sıralama
  • Sıralama Algoritması
  • Sıralama düzenini tersine çevirme

Anahtarlara ve Değerlere Göre Sıralama

Python Sözlüğü sıralamak için yerleşik tuş işlevleri, tuşları() ve değerleri() işlevlerini sunar. Yinelenebilir herhangi bir şeyi bağımsız değişken olarak alır ve sıralanmış anahtar listesini döndürür. Sözlüğü artan sırada sıralamak için tuşlarını kullanabiliriz. Aşağıdaki örneği anlayalım.

Örnek -

 names = {1:'Alice' ,2:'John' ,4:'Peter' ,3:'Andrew' ,6:'Ruffalo' ,5:'Chris' } #print a sorted list of the keys print(sorted(names.keys())) #print the sorted list with items. print(sorted(names.items())) 

Çıktı:

 [1, 2, 3, 4, 5, 6] [(1, 'Alice'), (2, 'John'), (3, 'Andrew'), (4, 'Peter'), (5, 'Chris'), (6, 'Ruffalo')] 

Açıklama -

Yukarıdaki kodda bir sözlük tanımladık. isimler . Yerleşik işlevi aşağıdakilerle birlikte kullandık: sıralanmış() sıralanan anahtarların listesini döndüren işlev. Daha sonra şunu kullandık: öğeler() Sözlüğü sıralı düzende alma işlevi.

Sıralama Algoritması

Bir sözlüğü sıralamak için çeşitli sıralama algoritmaları vardır; sorted yönteminde diğer argümanları kullanabiliriz. Aşağıdaki örneği anlayalım.

Örnek -

 daynames = { 'one' : 'Monday' , 'six' : 'Saturday' ,'three' : 'Wednesday' , 'two' : 'Tuesday' , 'five': 'Friday' , 'seven': 'Sunday' } print(daynames) number = { 'one' : 1 , 'two' : 2 , 'three' : 3 , 'four' : 4 , 'five' : 5 , 'six' : 6 , 'seven' : 7} print(sorted(daynames , key=number.__getitem__)) print([daynames[i] for i in sorted(daynames , key=number.__getitem__)]) 

Çıktı:

 {'one': 'Monday', 'six': 'Saturday', 'three': 'Wednesday', 'two': 'Tuesday', 'five': 'Friday', 'seven': 'Sunday'} ['one', 'two', 'three', 'five', 'six', 'seven'] ['Monday', 'Tuesday', 'Wednesday', 'Friday', 'Saturday', 'Sunday'] 

Sıralanan Sırayı Tersine Çevir

Sözlük kullanılarak tersine çevrilebilir. tersi argüman. Aşağıdaki örneği anlayalım.

Örnek -

 a = {'a':2 ,'b':1 ,'c':3 ,'d':4 ,'e':5 ,'f':6 } print(sorted(a.values() , reverse= True)) 

Çıktı:

 [6, 5, 4, 3, 2, 1] 

Bu dersimizde Python'da sözlüğün nasıl sıralanacağını tartıştık. Sıralanmış bir sözlüğün büyük miktarda veriyi yönetmesi kolaydır ve bize hızlı bir arama sonucu sağlar.