Krajta

Python OrderedDict

Python OrderedDict

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írek
importovat 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írek
importovat 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írek
importovat 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írek
importovat 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.

Hry Top 5 karet pro zachycení hry
Top 5 karet pro zachycení hry
Všichni jsme viděli a milovali streamování her na YouTube. PewDiePie, Jakesepticye a Markiplier jsou jen někteří z nejlepších hráčů, kteří vydělali mi...
Hry Jak vyvíjet hru na Linuxu
Jak vyvíjet hru na Linuxu
Před deseti lety by jen málo uživatelů Linuxu předpovídalo, že jejich oblíbený operační systém bude jednoho dne populární herní platformou pro komerčn...
Hry Porty komerčních her s otevřeným zdrojovým kódem
Porty komerčních her s otevřeným zdrojovým kódem
Zdarma, s otevřeným zdrojovým kódem a multiplatformní herní enginy lze hrát staré i některé z poměrně nedávných herních titulů. Tento článek uvede sez...