Datové struktury jsou základními součástmi libovolného programovacího jazyka, který data efektivně ukládá a spravuje. Python poskytuje mnoho vestavěných datových struktur, tj.E., seznamy, n-tice a slovníky, které programátorům pomáhají vytvářet efektivní aplikace. Slovníky Pythonu ukládají data do párů klíč – hodnota. OrderedDict je podtřída třídy dict a udržuje pořadí klíčů, ve kterých byly vloženy. Toto je jediný a jediný rozdíl mezi dict a OrderDict. Dikt neudržuje pořadí klíče.
OrderedDict udržuje pořadí vkládání klíčů, a když iterujeme OrderedDict, vrátí klíče ve stejném pořadí. Na druhou stranu, když se iterace provádí na dict, klíče se vracejí v náhodném pořadí. Slovníky jsou však nyní seřazeny v Pythonu 3.6 a vyšší verze a vrátí hodnoty ve stejném pořadí, v jakém jsou vloženy. Třída OrderedDict existuje v modulu sbírky. Chcete-li tedy použít třídu OrderedDict, nejprve importujte modul kolekce. Tento článek podrobně vysvětluje Python OrderedDict s příklady.
Příklady
Vytvořme OrderedDict v našem skriptu Pythonu a přidejme data ve formě klíčů a hodnot. Položky () je integrovaná funkce Pythonu, která vrací informace o klíčích a hodnotách.
#importování modulu sbírekimportovat sbírky
#vytvoření OrderedDict
my_dict = sbírky.OrderedDict ()
my_dict ["A"] = 1
my_dict ["B"] = 2
my_dict ["C"] = 3
my_dict ["D"] = 4
#declaring smyčka for pro iteraci OrderDict
pro i v my_dict.položky ():
tisk (i)
Výstup
Ve výstupu lze pozorovat, že OrderedDict vrací klíče a hodnoty stejně jako vložené.
Nyní vytvořme další OrderDict studenta a uložme do něj informace o studentovi.
#importování modulu sbírekimportovat sbírky
# vytvoření objednávky studenta
std_dict = sbírky.OrderedDict ()
std_dict ['name'] = 'John'
std_dict ['age'] = 23
std_dict ['email'] = '[chráněn e-mailem' '
std_dict ['class'] = 'BS'
#declaring smyčka for pro iteraci OrderDict
pro i v std_dict.položky ():
tisk (i)
Výstup
Změna hodnot klíčů
Můžeme změnit hodnotu konkrétního klíče OrderedDict. Pokud změníme hodnotu libovolného konkrétního klíče, pořadí klíčů zůstane v OrderDict stejné. Pojďme změnit věkovou hodnotu ve studentském OrderDict.
#importování modulu sbírekimportovat sbírky
# Vytvoření objednaného diktátu studenta
std_dict = sbírky.OrderedDict ()
std_dict ['name'] = 'John'
std_dict ['age'] = 23
std_dict ['email'] = '[chráněno e-mailem' '
std_dict ['class'] = 'BS'
print ("Pořadí klíčů před změnou hodnoty věku:")
#declaring smyčka for pro iteraci OrderDict
pro i v std_dict.položky ():
tisk (i)
# změna hodnoty věku
std_dict ['age'] = 25
print ("Pořadí kláves po změně hodnoty věku:")
pro i v std_dict.položky ():
tisk (i)
Výstup
Výstup ukazuje, že pořadí kláves zůstává stejné, když změníme hodnotu konkrétního klíče.
Odstranění hodnoty z OrderedDict
Odstranění hodnot z OrderDict nezmění pořadí klíčů. Pokud odstraníme určitý klíč a znovu jej vložíme, bude na konec přidán. Podívejme se na příklad. Klíč „věk“ odstraníme ze studentského slovníku a poté jej znovu vložíme.
#importování modulu sbírekimportovat sbírky
# vytvoření objednávky studenta
std_dict = sbírky.OrderedDict ()
std_dict ['name'] = 'John'
std_dict ['age'] = 23
std_dict ['email'] = '[chráněno e-mailem' '
std_dict ['class'] = 'BS'
print ("Pořadí klíčů před změnou hodnoty věku:")
#declaring smyčka for pro iteraci OrderDict
pro i v std_dict.položky ():
tisk (i)
# odstranění klíče věku
del std_dict ['věk']
print ("Pořadí klíčů po odstranění klíče věku:")
pro i v std_dict.položky ():
tisk (i)
# opětovné vložení klíče a hodnoty věku
std_dict ['age'] = 23
print ("Pořadí klíčů po opětovném vložení klíče věku:")
pro i v std_dict.položky ():
tisk (i)
Výstup
Na výstupu je vidět, že když znovu vložíme klíč, vloží se na konec.
Závěr
OrderedDict je podtřída dict, která uspořádá klíč v pořadí a zachovává pořadí při jejich vkládání. Třída OrderedDict je součástí modulu sbírek. Tento článek vysvětluje OrderedDict a jeho funkce s příklady.