v této třídě zjistíte, co Python Dictionary je a jak jej vytvořit. Naučíte se také připojit, aktualizovat, odstranit a hledat prvky v objektu slovníku.
slovník v Pythonu je míchaná sbírka objektů. Na rozdíl od jiných datových typů, jako je seznam nebo sada, která má pole s jednou hodnotou, typ slovníku ukládá klíč spolu s jeho hodnotou.,
klávesy se spárují s hodnotami pomocí dvojtečky (:), zatímco čárky fungují jako oddělovač prvků. Také celý objekt slovníku používá kudrnaté příchytky k uzavření.
níže je příklad neplodného objektu slovníku, který nemá žádné prvky.
#The empty Python dictionary object{}
nezapomeňte, že pouze klíče uvnitř slovníku nemohou mít duplikáty, ale jejich hodnoty se mohou opakovat.
dále může být hodnota ve slovníku jakéhokoli platného datového typu Pythonu. Klíče však mají omezení jakýchkoli neměnných datových typů, jako je řetězec, číslo nebo n-tice.,
slovník v Pythonu
vytvořit slovníky
Chcete-li vytvořit Python slovník s pevnými klíči a hodnotami, pak je to docela snadné. Stačí kombinovat všechny páry“ key1:value1, key2:value2,… “ a uzavřít kudrnatými příchytkami.
kombinace klíče a jeho hodnoty, tj. „klíč: hodnota“ představuje jediný prvek slovníku v Pythonu.
při definování statických slovníkových objektů musíte být opatrní při použití jedinečných hodnot pro klíče. Mohou však pocházet z jakéhokoli platného datového typu Pythonu.,
nezapomeňte také použít pro hodnoty pouze neměnné datové typy, zatímco mohou mít duplikáty.
Dozvědět se o-Python Strings
Dictionary Operations
Python dictionary má klíč jako další parametr. K prvkům slovníku můžeme přistupovat pomocí klíčů jejich použitím jako indexu operátorovi pole () nebo předáním jako Argument metodě get ().
obě metody budou fungovat stejně, ale první z nich vrátí KeyError, zatímco druhá vrátí None, pokud prvek není k dispozici.,
spuštění výše uvedeného fragmentu kódování bude mít za následek následující výstup.
dict: Berrydict: 12dict: English
přístup k prvku s neexistujícím klíčem vrátí chybu. Podívejte se na níže uvedený kód.
dict = {'Student Name': 'Berry', 'Roll No.': 12, 'Subject': 'English'}print("dict: ", dict)
výše uvedený příklad používá klíč „Name“, který neexistuje. Spuštění stejné by produkoval „KeyError.“
V dalším příkladu přistupujeme k prvkům ve slovníku Pythonu pomocí funkce get ().
tento kód přinese následující výsledek.,
Berry12English
přidejte do slovníku
můžete připojit novou položku k existujícímu objektu dict s prvky následujícími dvěma způsoby.
přiřazení k připojování prvků
>>> dict_append = {"1" : "Python", "2" : "Java"}>>> print(dict_append){'1': 'Python', '2': 'Java'}>>> dict_append = "CSharp">>> print(dict_append){'1': 'Python', '3': 'CSharp', '2': 'Java'}>>>
aktualizační metoda pro připojení prvků
můžete zavolat metodu aktualizace slovníku a připojit k němu nový prvek. Rozšiřujeme výše uvedený příklad, viz níže:
>>> dict_append.update({"4" : "JavaScript"})>>> print(dict_append){'1': 'Python', '3': 'CSharp', '2': 'Java', '4': 'JavaScript'}>>>
Aktualizace Slovníku
Python dovoleno slovníku objekt být proměnlivý., Operace přidávání nebo aktualizace jsou tedy přípustné. Můžete tlačit novou položku nebo upravit existující pomocí operátora přiřazení.
kdykoli přidáte prvek, jehož klíč již existuje, jeho hodnota se změní na novou hodnotu. Při přidání nového páru“ key: value “ se do slovníku přidá nový prvek.
použijte přiřazení
v níže uvedeném příkladu demonstrujeme jak operace aktualizace, tak sčítání na existujícím objektu slovníku.
provedení výše uvedeného kódu vytvoří následující výstup.,
The student who left: BerryThe student who replaced: LarryThe student who joined: Jarry
použijte metodu aktualizace
můžete alternativně zavolat metodu aktualizace a upravit hodnotu jakéhokoli existujícího prvku. Viz příklad níže.
pojďme pokračovat v předchozím příkladu. Má objekt dict, který obsahuje klíč jako „jméno studenta“. Budeme aktualizovat jeho hodnotu.
Odebrat prvky
Python nám půjčí ne. metod pro odstranění prvků ze slovníku.
nejběžnější z nich je metoda „pop ()“. Bere klíč jako vstup a odstraní odpovídající prvek ze slovníku Python., Vrací hodnotu spojenou se vstupním klíčem.
další metodou je “ popitem ()“. Odstraňuje a vrací náhodný prvek (klíč, hodnota) ze slovníku.
Pokud chcete vynechat všechny prvky ze slovníku, použijte metodu“ clear () “ k vyprázdnění všeho.
nicméně dalším způsobem, jak odstranit prvek ze slovníku, je použití klíčového slova del. Může vám pomoci odstranit jednotlivé položky a následně celý objekt slovníku.
zde je výsledek spuštění výše uvedeného kódovacího úryvku.,
ve výše uvedeném příkladu druhý poslední příkaz odstraní všechny prvky ze slovníku Python a ponechá je prázdný.
a následné volání operátorovi “ del “ na objektu slovníku jej zcela odstraní. Poslední tiskový příkaz tedy selže s “ Jménemzrcadlo.“
Dozvědět se o-Tuples v Pythonu
atributy slovníku
Python neukládá žádná omezení na „hodnoty“ objektu slovníku. Můžete je vytvořit pomocí standardního Pythonu nebo jakýchkoli vlastních datových typů., Jak jsme však řekli dříve, „klíče“ nejsou stejné jako „hodnoty“ a mají zcela odlišné zacházení.
proto je důležité, abyste si zapamatovali následující dvě fakta o slovníku “ klíče.“
- stejný klíč nemůže mít ve slovníku jinou hodnotu. Potvrzuje, že duplicitní klíč nemůže existovat. I když se však pokusíte zadat duplicitní klíč, změní existující klíč pouze s hodnotou uvedenou v posledním přiřazení.
dict = {'Student Name': 'Berry', ' Roll No.,": 12, "předmět":"angličtina"," jméno studenta": "Kerry"} print ("dict:", dict)
provedení výše uvedeného kódu ukáže, že klíč „jméno studenta“ bude mít poslední přiřazenou hodnotu, tj. “ Kerry.“
dict: Kerry
- Python říká, že slovník Klíče by měly pocházet z neměnné datové typy. Můžete odvodit, že pouze povolené typy jsou řetězce, čísla nebo tuples. Podívejte se na standardní příklad níže.
dict = {: 'Berry', 'Roll no.,": 12, "předmět":"angličtina"} tisk ("dict:", dict)
ve výše uvedeném příkladu klíč používá typ seznamu. Vzhledem k tomu, Python nepodporuje to, proto prohlášení bude generovat „TypeError.“
zde je výsledek výše uvedeného příkladu.
Iterate Dictionary
podobné seznamům, můžete použít smyčku „pro in“ k procházení slovníkem. Obecně jsou to klíče, které umožňují iteraci.
pojďme pochopit koncept jednoduchým příkladem. Vytiskne všechny klíče slovníku ve smyčce.,
dict = {'Student Name': 'Berry', 'Roll No.': 12, 'Subject': 'English'}print("Keys are:")for key in dict: print(key)
výstup výše uvedeného kódu Pythonu je následující.
Keys are:Student NameRoll No.Subject
následujte ještě jeden příklad, pod kterým tiskne klíče spolu s hodnotami.
dict = {'Student Name': 'Berry', 'Roll No.': 12, 'Subject': 'English'}print("{Keys}:{Values}")for key, value in dict.items(): print({key},":",{value})
výsledek výše uvedeného kódu Pythonu je následující.
{Keys}:{Values}{'Student Name'} : {'Berry'}{'Roll No.'} : {12}{'Subject'} : {'English'}
Slovník s Porozuměním
Stejně jako Python seznam, slovník také umožňuje porozumění, vytvořit nové objekty z iterable ve smyčce.,
porozumění slovníku můžete zadat pomocí výrazu včetně páru „klíč: hodnota“ následovaného smyčkou a uzavřeného kudrnatými závorkami {}.
postupujte podle níže uvedených příkladů a vytvořte slovník pomocí syntaxe s porozuměním.
pojďme vytvořit objekt slovníku s typem řetězce pro klíče a formát čísla pro hodnoty.
>>> {str(iter):iter for iter in }{'44': 44, '33': 33, '55': 55, '11': 11, '22': 22}
Další příklad vytvoření slovníku ze seznamu pracovních dnů jako klíče a délka každého týdne jako hodnoty.,
>>> weekdays = >>> {w:len(w) for w in weekdays}{'fri': 3, 'tue': 3, 'wed': 3, 'sat': 3, 'thu': 3, 'mon': 3, 'sun': 3}
můžeme použít funkci „enumerate ()“ ve slovníku s porozuměním. Pomáhá nám uložit index konkrétního prvku, který bychom mohli použít později. Také v smyčce pro Není pozice prvku seznamu viditelná bez “ enumerate ().“
takové pythonové slovníky, které mají index prvků, mohou být užitečné v mnoha situacích.
>>> {w : i for i, w in enumerate(weekdays)}{'fri': 5, 'tue': 2, 'wed': 3, 'sat': 6, 'thu': 4, 'mon': 1, 'sun': 0}
Členství Test
můžeme rychle ověřit, zda Klíč je přítomen ve slovníku, nebo ne pomocí klíčových slov „.“Vezměte prosím na vědomí, že test členství se vztahuje pouze na klíče, nikoli na hodnoty.,
výstup výše uvedeného úryvku je následující.
TrueFalseTrue
Quick wrap up – Python Dictionary
v tomto tutoriálu jsme se zabývali jedním z nejvýznamnějších témat v Pythonu. V jakékoli doméně Pythonu se rozhodnete pracovat, protože znalost slovníků jistě pomůže.
Nyní, pokud jste se z této lekce něco naučili, pak se o to Podělte se svými kolegy. Připojte se také k našim účtům sociálních médií (Facebook / Twitter) a získejte včasné aktualizace.
Best,
TechBeamers