Питхон речник је збирка података који се чувају у облику кључ/вредност. Сваки кључ је повезан са својом вредношћу. По природи је променљива, што значи да можемо мењати податке након његовог креирања.
То је неуређено прикупљање података и омогућава складиштење дуплих вредности, али кључ мора бити јединствен.
разлика између фирме и компаније
Речник је декларисан помоћу витичастих заграда {}, а пар кључ-вредност је одвојен зарезом.
dict1 = {'name': 'Devansh', 'age': 22, 'Rollno':90014} print(dict1)
Излаз:
Зашто треба сортирати речник
- Временска сложеност претраге листе је О(н), а речник има сложеност времена претраге 0(1), што чини да је речник бржи од листе. Речник се може користити за листу кад год је то потребно.
- Сортирање нам омогућава да ефикасно анализирамо податке када радимо са структуром података.
- Сортирани речник пружа боље разумевање за руковање сложеним операцијама.
Хајде да разумемо различите начине сортирања речника.
- Сортирање по кључевима
- Сортирање по вредностима
- Алгоритам за сортирање
- Обрнути поређани редослед
Сортирање по кључевима и вредностима
Питхон нуди уграђене функције тастера кеис() и валуес() функције за сортирање речника. Узима било који итерабле као аргумент и враћа сортирану листу кључева. Можемо користити тастере да сортирамо речник у растућем редоследу. Хајде да разумемо следећи пример.
Пример -
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()))
Излаз:
[1, 2, 3, 4, 5, 6] [(1, 'Alice'), (2, 'John'), (3, 'Andrew'), (4, 'Peter'), (5, 'Chris'), (6, 'Ruffalo')]
Објашњење -
У горњем коду смо декларисали речник имена . Користили смо уграђену функцију заједно са сортирано() функција која је вратила листу сортираних кључева. Затим смо користили ставке() функција да добијете речник у сортираном редоследу.
Алгоритам за сортирање
Постоје различити алгоритми сортирања за сортирање речника; можемо користити друге аргументе у сортираној методи. Хајде да разумемо следећи пример.
Пример -
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__)])
Излаз:
{'one': 'Monday', 'six': 'Saturday', 'three': 'Wednesday', 'two': 'Tuesday', 'five': 'Friday', 'seven': 'Sunday'} ['one', 'two', 'three', 'five', 'six', 'seven'] ['Monday', 'Tuesday', 'Wednesday', 'Friday', 'Saturday', 'Sunday']
Обрните сортирани редослед
Речник се може преокренути коришћењем обрнуто расправа. Хајде да разумемо следећи пример.
Пример -
a = {'a':2 ,'b':1 ,'c':3 ,'d':4 ,'e':5 ,'f':6 } print(sorted(a.values() , reverse= True))
Излаз:
[6, 5, 4, 3, 2, 1]
У овом водичу смо разговарали о томе како сортирати речник у Питхон-у. Сортирани речник је лак за руковање великом количином података и даје нам брз резултат претраге.