Vyhledávání na webu

Naučte se datovou strukturu slovníku Python – část 3


V této 3. části série Python Data Structure budeme diskutovat o tom, co je slovník, jak se liší od jiných datových struktur v pythonu, jak vytvářet, mazat objekty slovníku a metody objektů slovníku.

  • Dictionary je vestavěná implementace „Python Data Structure “, což je kolekce párů „Klíč: Hodnota“.
  • Slovník je vytvořen pomocí složených závorek s klíčem a hodnotou oddělenými středníkem {Key : Value}.
  • Podobně jako seznam jsou objekty slovníků proměnlivým datovým typem, což znamená, že objekty lze po vytvoření slovníku upravit.
  • Konstrukce implementace slovníku v pythonu je obecněji známá jako „Asociativní pole“.
  • V seznamu nebo nicích můžeme k položkám přistupovat odkazem na jejich indexové pozice, protože položky v seznamu jsou seřazeny (tj. uloženy v pořadí, v jakém byly vytvořeny). Objekty slovníku mohou být v libovolném pořadí, protože k položkám se přistupuje pomocí příslušného „Klíče“.
  • Slovníky jsou velmi užitečné, když musíme ukládat objekty a odkazovat na ně jménem.
  • Objekt „key“ slovníku musí být jedinečného a neměnného typu.
  • Objekt „Key“ slovníku může být řetězec, celé číslo nebo plovoucí hodnoty.
  • Slovník „Hodnoty “ může být libovolného datového typu.

Vytvořte objekt slovníku

Objekt Dictionary lze vytvořit pomocí složených závorek se středníkem oddělujícím pár klíče a hodnoty „{Key:value}“ nebo konstruktor „dict() “ metoda.

Pro demonstraci vytvořím slovník, který bude ukládat data o fotbalovém týmu a jeho hrající jedenáctce s pozicí klíče a hráče názvy jako hodnoty.

Ke konstrukci objektu slovníku můžete použít metodu konstruktoru dict().

Přístup k objektu slovníku

K položkám slovníku se namísto indexování přistupuje pomocí odkazů „klíč“. Indexování je možné použít, pokud máme ve slovníku jakýkoli sekvenční datový typ (řetězec, seznam, n-tice atd..).

K položkám lze přistupovat pomocí dic_object[“klíč ”].

KeyError “ se zobrazí, pokud se pokusíte o přístup k položkám slovníku pomocí indexování nebo pokud se pokusíte o přístup k „klíči “, který není součástí slovníku.

Upravit a odstranit objekt slovníku

Můžete upravit stávající položku nebo přidat novou položku přímým odkazem na její klíč Dictionary_object[“key ”]=value. Tím se aktualizuje hodnota, pokud je k dispozici klíč, jinak přidejte novou položku do slovníku.

Vymazat

Pomocí vestavěného klíčového slova „del“ můžete odstranit konkrétní hodnotu na základě jejího klíče nebo smazat klíč nebo odstranit objekt slovníku z oboru názvů.

Slovníkové metody

K vyhledání dostupných metod a atributů pro objekt slovníku můžete použít vestavěnou funkci „dir() “.

clear() – Tato metoda odstraní všechny položky z objektu slovníku. Tato metoda nebere žádný argument.

Copy() – Vrátí mělkou kopii objektu slovníku. Metoda copy() nebere jako argument žádné parametry.

Keys() – Tato metoda vrací objekt zobrazení pro klíče dostupné ve slovníku jako objekt klíče slovníku. Tato metoda nebere žádný argument.

Values() – Tato metoda vrací objekt zobrazení pro hodnoty z objektu slovníku. Tato metoda nevyžaduje žádný argument.

Items() – Tato metoda vrací dvojici (klíč,hodnota) z objektu slovníku.

Setdefault() – Tato metoda vyhledává daný klíč ve slovníku. Pokud klíč není ve slovníku nalezen, bude přidán do slovníku.
Vyžaduje 2 argumenty dic.setdefault(klíč,[,výchozí hodnota]).

Pokud není zadána žádná hodnota, výchozí hodnota je nastavena na Žádné.

get() – Tato metoda vrací hodnotu zadaného klíče, pokud je klíč dostupný ve slovníku.

Syntax dict.get(key[, value]) 

Tato metoda vyžaduje 2 argumenty. První je vstupní argument, který vyhledá daný klíč ve slovníku a vrátí hodnotu nalezeného klíče. Druhý argument vrátí hodnotu, pokud klíč není nalezen. Výchozí návratová hodnota je nastavena na „Žádné“.

Update() – Metoda aktualizace přidá položky do slovníku, pokud klíč není ve slovníku. Pokud je klíč nalezen, aktualizuje se o novou hodnotu. Aktualizační metoda přijímá buď jiný slovníkový objekt páru k:v nebo iterovatelný objekt páru k:v jako pár n-tic.

Odebrání/smazání objektu slovníku

Pop() – Tato metoda odebere hodnotu na základě klíče jako vstupu a vrátí odstraněnou hodnotu.

Tato metoda přijímá dva parametry.

  1. Klíč – klíč, který se má hledat v objektu slovníku.
  2. Výchozí – Návratová hodnota, která se zadá, pokud klíč není ve slovníku nalezen.

POZNÁMKA Pokud klíč není ve slovníku nalezen a pokud nezadáte výchozí hodnotu, zobrazí se „KeyError “.

Popitem() – Odebere libovolné prvky z objektu slovníku. Není přijat žádný argument a vrátí „KeyError “, pokud se řekne, že slovník je prázdný.

Stejně jako list a tices můžeme pomocí klíčového slova del odebrat položky v objektu slovníku nebo odebrat objekt slovníku z oboru názvů.

souhrn

V tomto článku jste viděli, co je slovník a jak se liší od jiných datových struktur v pythonu. Také jste viděli, jak vytvářet, přistupovat, upravovat a odstraňovat objekty slovníku.

Optimální případ použití slovníku je, když musíme ukládat data na základě názvu a odkazovat na ně jeho jménem. V příštím článku uvidíme jiný typ vestavěné datové struktury pythonu „set/Frozenset“. Do té doby si můžete přečíst více o slovnících zde.