Slovník Pythonu je zbierka údajov uložených vo forme kľúč-hodnota. Každý kľúč je spojený s jeho hodnotou. Má meniteľnú povahu, čo znamená, že po jeho vytvorení môžeme meniť údaje.
Je to neusporiadaný zber údajov a umožňuje ukladanie duplicitných hodnôt, ale kľúč musí byť jedinečný.
tučným písmom v css
Slovník je deklarovaný pomocou zložených zátvoriek {} a pár kľúč – hodnota je oddelený čiarkou.
dict1 = {'name': 'Devansh', 'age': 22, 'Rollno':90014} print(dict1)
Výkon:
Prečo je potrebné triediť slovník
- Časová zložitosť hľadania zoznamu je O(n) a slovník má zložitosť času hľadania 0(1), vďaka čomu je slovník rýchlejší ako zoznam. Slovník môže byť použitý na mieste pre zoznam, kedykoľvek to potrebuje.
- Triedenie nám umožňuje efektívne analyzovať dáta, keď pracujeme s dátovou štruktúrou.
- Triedený slovník poskytuje lepšie pochopenie pre zvládnutie zložitých operácií.
Poďme pochopiť rôzne spôsoby triedenia slovníka.
- Triedenie podľa kľúčov
- Triedenie podľa hodnôt
- Algoritmus triedenia
- Obrátenie zoradeného poradia
Triedenie podľa kľúčov a hodnôt
Python ponúka funkcie vstavaných klávesov keys() a values() na triedenie slovníka. Berie ľubovoľnú iterovateľnú hodnotu ako argument a vracia zoradený zoznam kľúčov. Pomocou kláves môžeme zoradiť slovník vo vzostupnom poradí. Poďme pochopiť nasledujúci príklad.
Príklad -
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()))
Výkon:
[1, 2, 3, 4, 5, 6] [(1, 'Alice'), (2, 'John'), (3, 'Andrew'), (4, 'Peter'), (5, 'Chris'), (6, 'Ruffalo')]
vysvetlenie -
Vo vyššie uvedenom kóde sme deklarovali slovník mená . Použili sme vstavanú funkciu spolu s zoradené () funkcia, ktorá vrátila zoznam zoradených kľúčov. Ďalej sme použili položky() funkcia na získanie slovníka v zoradenom poradí.
Algoritmus triedenia
Existujú rôzne triediace algoritmy na triedenie slovníka; môžeme použiť iné argumenty v triedenej metóde. Poďme pochopiť nasledujúci príklad.
Príklad -
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__)])
Výkon:
{'one': 'Monday', 'six': 'Saturday', 'three': 'Wednesday', 'two': 'Tuesday', 'five': 'Friday', 'seven': 'Sunday'} ['one', 'two', 'three', 'five', 'six', 'seven'] ['Monday', 'Tuesday', 'Wednesday', 'Friday', 'Saturday', 'Sunday']
Obráťte zoradené poradie
Slovník je možné obrátiť pomocou obrátene argument. Poďme pochopiť nasledujúci príklad.
Príklad -
a = {'a':2 ,'b':1 ,'c':3 ,'d':4 ,'e':5 ,'f':6 } print(sorted(a.values() , reverse= True))
Výkon:
[6, 5, 4, 3, 2, 1]
V tomto návode sme diskutovali o tom, ako triediť slovník v Pythone. Triedený slovník ľahko zvládne veľké množstvo údajov a poskytuje rýchle výsledky vyhľadávania.