Jak jsou slovníky implementovány v Pythonu?
Jak jsou slovníky implementovány v Pythonu?

Video: Jak jsou slovníky implementovány v Pythonu?

Video: Jak jsou slovníky implementovány v Pythonu?
Video: Python Tutorial for Beginners 5: Dictionaries - Working with Key-Value Pairs 2024, Smět
Anonim

Slovníky práce tak, že vypočítáte hash kód pro každý klíč uložený v slovník pomocí vestavěné hashovací funkce. Hash kód se značně liší v závislosti na klíči; například, " Krajta "hašuje na -539294296, zatímco " krajta “, řetězec, který se liší o jediný bit, hashuje na 1142331976.

Jak je tedy seznam implementován v Pythonu?

Pythonovy seznamy jsou skutečně pole s proměnnou délkou, nikoli propojená ve stylu Lisp seznamy . The implementace používá souvislé pole odkazů na jiné objekty a zachovává ukazatel na toto pole a délku pole v seznam struktura hlavy. Když jsou položky připojeny nebo vloženy, velikost pole odkazů se změní.

Následně je otázkou, jakou datovou strukturu implementuje slovník Python? Slovníky jsou Implementace Pythonu z a datová struktura že je obecněji známý jako asociativní pole. A slovník sestává z kolekce párů klíč–hodnota. Každý pár klíč–hodnota mapuje klíč na přidruženou hodnotu.

Jak jsou tedy v Pythonu implementovány n-tice?

Zdá se, že standard implementace z a tuple je jednoduše jako pole. Pokud existuje více různých n-tice velikosti n, které by bylo možné znovu použít, jsou zřetězeny dohromady v jakémsi propojeném seznamu tím, že mají každý n-tice nultý vstupní bod do dalšího tuple které lze znovu použít.

Jak Python ukládá seznamy?

Nejjednodušší datová struktura v Krajta a je zvyklý obchod A seznam hodnot. Seznamy jsou kolekce položek (řetězce, celá čísla nebo dokonce jiné seznamy ). Každá položka v seznam má přiřazenou hodnotu indexu.

Doporučuje: