logo

Python | Razvrsti slovarje Python po ključu ali vrednosti

V slovarju Python sta dva elementa - ključi in vrednosti. Slovar lahko razvrstite po ključih, vrednostih ali obojem. V tem članku bomo razpravljali o metodah razvrščanja slovarjev po ključu ali vrednosti Python .

Potreba po slovarju za razvrščanje v Pythonu

Potrebujemo razvrščanje podatkov, da zmanjšamo kompleksnost podatkov in naredimo poizvedbe hitrejše in učinkovitejše. Razvrščanje je zelo pomembno, ko imamo opravka z veliko količino podatkov.

Slovar lahko razvrstimo po vrednostih s temi metodami:



  • Najprej razvrstite ključe po abecedi z uporabo ključ_vrednost. iterkeys() funkcijo.
  • Drugič, razvrstite ključe po abecedi z uporabo razvrščeno (ključ_vrednost) funkcijo in natisnite vrednost, ki ji ustreza.
  • Tretjič, razvrstite vrednosti po abecedi z uporabo ključ_vrednost. iteriitems() , ključ = lambda (k, v) : (v, k))

Razvrsti slovarje Python po primerih ključa ali vrednosti

Tu so glavne naloge, ki jih je treba izvesti za razvrščanje slovarja po vrednosti in ključih v Pythonu.

  1. Ustvariti slovar in prikaže njegove seznamske ključe po abecedi.
  2. Prikaži tako ključe kot vrednosti, razvrščene po ključu po abecednem vrstnem redu.
  3. Končno prikažite tako ključe kot vrednosti, razvrščene po vrednosti po abecednem vrstnem redu.

Primer 1: Razvrščanje slovarja po ključu

V tem primeru bomo slovar razvrstili po ključih in vrsta rezultata bo slovar.

Python3




myDict>=> {>'ravi'>:>10>,>'rajnish'>:>9>,> >'sanjeev'>:>15>,>'yash'>:>2>,>'suraj'>:>32>}> myKeys>=> list>(myDict.keys())> myKeys.sort()> sorted_dict>=> {i: myDict[i]>for> i>in> myKeys}> print>(sorted_dict)>

>

>

pretvorba nfa v dfa
Izhod

{'rajnish': 9, 'ravi': 10, 'sanjeev': 15, 'suraj': 32, 'yash': 2}>

Primer 2: Prikaz ključev v razvrščenem vrstnem redu

V tem primeru poskušamo razvrstiti slovar po ključih in vrednostih v Pythonu. Tu iterkeys() vrne iterator nad ključi slovarja.

Python3




hashmap java

# Function calling> def> dictionary():> ># Declare hash function> >key_value>=> {}> # Initializing value> >key_value[>2>]>=> 56> >key_value[>1>]>=> 2> >key_value[>5>]>=> 12> >key_value[>4>]>=> 24> >key_value[>6>]>=> 18> >key_value[>3>]>=> 323> >print>(>'Task 1:- '>)> >print>(>'key_value'>, key_value)> ># iterkeys() returns an iterator over the> ># dictionary’s keys.> >for> i>in> sorted>(key_value.keys()):> >print>(i, end>=>' '>)> def> main():> ># function calling> >dictionary()> # Main function calling> if> __name__>=>=> '__main__'>:> >main()>

>

>

Izhod

Task 1:- key_value {2: 56, 1: 2, 5: 12, 4: 24, 6: 18, 3: 323} 1 2 3 4 5 6>

Primer 3: Razvrščanje slovarja po ključu

V tem primeru bomo razvrstili po leksikografskem vrstnem redu, pri čemer bomo tip ključa vzeli kot niz.

Python3




# Creates a sorted dictionary (sorted by key)> from> collections>import> OrderedDict> dict> => {>'ravi'>:>'10'>,>'rajnish'>:>'9'>,> >'sanjeev'>:>'15'>,>'yash'>:>'2'>,>'suraj'>:>'32'>}> dict1>=> OrderedDict(>sorted>(>dict>.items()))> print>(dict1)>

>

>

Izhod

java generiki
OrderedDict([('rajnish', '9'), ('ravi', '10'), ('sanjeev', '15'), ('suraj', '32'), ('yash', '2')])>

Primer 4: Razvrščanje ključev in vrednosti po abecedi z uporabo ključa

V tem primeru poskušamo razvrstiti slovar po ključih in vrednostih v Pythonu. Tukaj uporabljamo iterator nad vrednostjo slovarja za razvrščanje ključev.

Python3




# function calling> def> dictionairy():> ># Declaring the hash function> >key_value>=> {}> # Initialize value> >key_value[>2>]>=> 56> >key_value[>1>]>=> 2> >key_value[>5>]>=> 12> >key_value[>4>]>=> 24> >key_value[>6>]>=> 18> >key_value[>3>]>=> 323> > >print>(>'key_value'>,key_value)> >print>(>'Task 2:- Keys and Values sorted in'>,> >'alphabetical order by the key '>)> > ># sorted(key_value) returns a sorted list> ># of the Dictionary’s keys.> >for> i>in> sorted>(key_value):> >print>((i, key_value[i]), end>=>' '>)> def> main():> ># function calling> >dictionairy()> # main function calling> if> __name__>=>=> '__main__'>:> >main()>

>

>

Izhod

key_value {2: 56, 1: 2, 5: 12, 4: 24, 6: 18, 3: 323} Task 2:- Keys and Values sorted in alphabetical order by the key (1, 2) (2, 56) (3, 323) (4, 24) (5, 12) (6, 18)>

Primer 5: Razvrščanje ključev in vrednosti po abecedi z uporabo vrednosti

V tem primeru poskušamo razvrstiti slovar po ključih in vrednostih v Pythonu. Tu uporabljamo za razvrščanje po leksikografskem vrstnem redu.

Python3


kako razvrstiti matriko v Javi



# Function calling> def> dictionairy():> ># Declaring hash function> >key_value>=> {}> # Initializing the value> >key_value[>2>]>=> 56> >key_value[>1>]>=> 2> >key_value[>5>]>=> 12> >key_value[>4>]>=> 24> >key_value[>6>]>=> 18> >key_value[>3>]>=> 323> > >print>(>'key_value'>,key_value)> >print>(>'Task 3:- Keys and Values sorted'>,> >'in alphabetical order by the value'>)> ># Note that it will sort in lexicographical order> ># For mathematical way, change it to float> >print>(>sorted>(key_value.items(), key>=>lambda> kv:> >(kv[>1>], kv[>0>])))> def> main():> ># function calling> >dictionairy()> # main function calling> if> __name__>=>=> '__main__'>:> >main()>

>

>

Izhod

key_value {2: 56, 1: 2, 5: 12, 4: 24, 6: 18, 3: 323} Task 3:- Keys and Values sorted in alphabetical order by the value [(1, 2), (5, 12), (6, 18), (4, 24), (2, 56), (3, 323)]>

Časovna kompleksnost za ta program je O(n log n), kjer je n število parov ključ-vrednost v slovarju.

Kompleksnost pomožnega prostora za ta program je tudi O(n), kjer je n število parov ključ-vrednost v slovarju.

Primer 6: Razvrščanje slovarja po vrednosti

V tem primeru poskušamo razvrstiti slovar po vrednostih v Pythonu. Tukaj uporabljamo slovarsko razumevanje za razvrščanje naših vrednosti.

Python3

char v niz v Javi




# Creates a sorted dictionary (sorted by key)> from> collections>import> OrderedDict> import> numpy as np> dict> => {>'ravi'>:>10>,>'rajnish'>:>9>,> >'sanjeev'>:>15>,>'yash'>:>2>,>'suraj'>:>32>}> print>(>dict>)> keys>=> list>(>dict>.keys())> values>=> list>(>dict>.values())> sorted_value_index>=> np.argsort(values)> sorted_dict>=> {keys[i]: values[i]>for> i>in> sorted_value_index}> print>(sorted_dict)>

>

>

Izhod:

{'ravi': 10, 'rajnish': 9, 'sanjeev': 15, 'yash': 2, 'suraj': 32} {'ravi': 2, 'rajnish': 9, 'sanjeev': 10, 'yash': 15, 'suraj': 32}>

Časovna zahtevnost: O(n log n), kjer je n število elementov v slovarju.
Pomožni prostor: O(n), saj ustvarjamo nove sezname ključev in vrednosti ter ustvarjamo nov slovar z enakim številom vnosov kot izvirni slovar.

Zajeli smo različne primere na podlagi razvrščanja slovarja po ključu ali vrednosti. Branje in vadba teh kod Python vam bo pomagala razumeti razvrščanje v slovarjih Python.

Vrednosti slovarjev lahko preprosto razvrstite po ključu ali vrednosti.

Podobna branja:

  • Razvrsti slovar
  • Različni načini razvrščanja slovarja po vrednostih in obratno
  • Različni načini razvrščanja slovarja po ključih in obratno
  • Načini razvrščanja seznama slovarjev po vrednostih
  • Razvrsti slovarski ključ in seznam vrednosti