logo

Kuinka lajitella sanakirja Pythonissa

Python-sanakirja on kokoelma tietoja, jotka on tallennettu avainarvomuotoon. Jokainen avain liittyy sen arvoon. Se on luonteeltaan muuttuva, mikä tarkoittaa, että voimme muuttaa tietoja sen luomisen jälkeen.

Se on tietojen järjestämätön kokoelma ja mahdollistaa päällekkäisten arvojen tallentamisen, mutta avaimen on oltava yksilöllinen.

hashmapin sisäinen toiminta

Sanakirja ilmoitetaan käyttämällä aaltosulkuja {}, ja avain-arvo-pari erotetaan pilkulla.

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

Lähtö:

Miksi sanakirjaa pitää lajitella

  • Listan hakuajan monimutkaisuus on O(n), ja sanakirjan hakuajan kompleksisuus on 0(1), jolloin sanakirja on listaa nopeampi. Sanakirjaa voidaan käyttää luettelossa aina tarvittaessa.
  • Lajittelun avulla voimme analysoida dataa tehokkaasti, kun työskentelemme tietorakenteen kanssa.
  • Lajiteltu sanakirja tarjoaa paremman käsityksen monimutkaisten toimintojen käsittelystä.

Ymmärretään sanakirjan lajittelutavat.

  • Lajittelu avainten mukaan
  • Lajittelu arvojen mukaan
  • Lajittelualgoritmi
  • Käänteinen järjestys

Lajittelu avainten ja arvojen mukaan

Python tarjoaa sisäänrakennetut keys functions keys()- ja Values()-funktiot sanakirjan lajitteluun. Se ottaa argumentiksi minkä tahansa iteroitavan ja palauttaa lajitellun avainluettelon. Voimme käyttää näppäimiä lajitellaksesi sanakirjan nousevaan järjestykseen. Ymmärretään seuraava esimerkki.

Esimerkki -

 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())) 

Lähtö:

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

Selitys -

Yllä olevassa koodissa olemme ilmoittaneet sanakirjan nimet . Käytimme sisäänrakennettua toimintoa yhdessä lajiteltu() funktio, joka palautti lajiteltujen avainten luettelon. Seuraavaksi käytimme tuotteet() -toimintoa saadaksesi sanakirjan lajiteltuun järjestykseen.

Lajittelualgoritmi

Sanakirjan lajitteluun on olemassa erilaisia ​​lajittelualgoritmeja; voimme käyttää muita argumentteja lajitetussa menetelmässä. Ymmärretään seuraava esimerkki.

Esimerkki -

 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__)]) 

Lähtö:

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

Käänteinen järjestys

Sanakirjan voi kääntää käänteisesti käyttämällä käänteinen Perustelu. Ymmärretään seuraava esimerkki.

Esimerkki -

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

Lähtö:

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

Tässä opetusohjelmassa olemme keskustelleet sanakirjan lajittelusta Pythonissa. Lajiteltu sanakirja on helppo käsitellä suuria tietomääriä ja antaa meille nopean hakutuloksen.