ebben az osztályban, akkor rájössz, mi Python Szótár, és hogyan kell létrehozni. Meg fogja tanulni hozzáfűzni, frissíteni, eltávolítani és keresni az elemeket egy szótárobjektumban.
a szótár Python egy kódolt gyűjteménye tárgyak. Más adattípusoktól, például egy listától vagy egy olyan készlettől eltérően, amely egyetlen értékmezővel rendelkezik, a szótár típusa egy kulcsot tárol annak értékével együtt.,
a gombok kettőspont (:) segítségével párosulnak az értékekkel, míg a vesszők elválasztóként működnek az elemek számára. A teljes szótár objektum göndör zárójeleket is használ, hogy bezárja magát.
Az alábbiakban egy példa egy kopár szótár objektumra, amelynek nincs eleme.
#The empty Python dictionary object{}
kérjük, ne feledje, hogy csak a szótárban lévő gombok nem lehetnek másolatok, de értékeik megismételhetik magukat.
ezután a szótárban szereplő érték bármilyen érvényes Python adattípus lehet. De a kulcsoknak van egy korlátja, hogy bármilyen megváltoztathatatlan adattípus, például karakterlánc, szám vagy tuple legyen.,
szótár Python-ban
szótárak létrehozása
ha Python szótárt szeretne létrehozni rögzített kulcsokkal és értékekkel, akkor ezt nagyon könnyű megtenni. Csak kombinálja az összes “key1: value1, key2: value2,…” párokat és zárja be a göndör fogszabályzót.
egy kulcs és annak értéke, azaz “kulcs: érték” kombinációja egy szótár egyetlen elemét jelenti a Python-ban.
statikus szótár objektumok meghatározása közben ügyelni kell arra, hogy egyedi értékeket használjon a kulcsokhoz. Ezek azonban bármilyen érvényes Python adattípusból származhatnak.,
ne feledje, hogy csak megváltoztathatatlan adattípusokat használjon az értékekhez, miközben másolatok lehetnek.
Tudjon meg többet – Python karakterláncok
szótár műveletek
a Python szótár további paraméterként tartalmazza a kulcsot. A szótár elemeit kulcsok segítségével Hozzáférhetjük úgy, hogy indexként használjuk őket a tömb operátorhoz (), vagy argumentumként adjuk át a get() metódust.
mindkét módszer ugyanúgy fog működni, de az előbbi visszaad egy Keyerrort, míg az utóbbi nem ad vissza, ha az elem nem áll rendelkezésre.,
a fenti kódrészlet futtatása a következő kimenetet eredményezi.
dict: Berrydict: 12dict: English
egy nem létező kulccsal rendelkező elem elérése hibát eredményez. Nézze meg az alábbi kódot.
dict = {'Student Name': 'Berry', 'Roll No.': 12, 'Subject': 'English'}print("dict: ", dict)
a fenti példa a” név ” kulcsot használja, amely nem létezik. Ugyanaz futtatása “KeyError” – ot eredményez.”
a következő példában elérjük a Python szótár elemeit a get () funkció segítségével.
Ez a kód a következő eredményt adja.,
Berry12English
hozzáfűzi egy szótárban
egy új elemet egy meglévő dict objektumhoz csatolhat elemekkel a következő két módon.
hozzárendelés elemek hozzáfűzéséhez
>>> 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'}>>>
frissítési módszer elemek hozzáfűzéséhez
felhívhatja a szótár frissítési módját, hogy új elemet csatoljon hozzá. Kiterjesztjük a fenti példát, lásd alább:
>>> dict_append.update({"4" : "JavaScript"})>>> print(dict_append){'1': 'Python', '3': 'CSharp', '2': 'Java', '4': 'JavaScript'}>>>
szótár frissítése
Python lehetővé tette a szótár objektum megváltoztatását., Ezért a hozzáadási vagy frissítési műveletek megengedettek. Új elemet nyomhat, vagy módosíthatja a meglévő elemeket a hozzárendelés operátor segítségével.
amikor olyan elemet ad hozzá, amelynek kulcsa már létezik, az értéke új értékre változik. Egy friss “kulcs: érték” pár hozzáadásakor egy új elem kerül hozzáadásra a szótárhoz.
use Assigment
az alábbi példában bemutatjuk mind a frissítési, mind az összeadási műveleteket a meglévő szótárobjektumon.
a fenti kód végrehajtása a következő kimenetet eredményezi.,
The student who left: BerryThe student who replaced: LarryThe student who joined: Jarry
használja a
frissítési módszert bármelyik meglévő elem értékének módosításához. Lásd az alábbi példát.
folytassuk az előző példát. Van egy dict objektum, amely tartalmaz egy kulcsot, mint “diák neve”. Frissítjük az értékét.
elemek eltávolítása
Python kölcsönöz nekünk egy nem. az elemek eltávolításának módszereiről a szótárból.
ezek közül a leggyakoribb a” pop () ” módszer. Bemenetként a kulcsot veszi át, majd törli a megfelelő elemet a Python szótárból., Visszaadja a bemeneti kulcshoz társított értéket.
egy másik módszer a “popitem()”. Eltávolítja és visszaad egy véletlen elemet (kulcs, érték) a szótárból.
Ha szeretné eldobni az összes elemet a szótárból, akkor használja a “clear()” módszert mindent öblíteni.
ennek ellenére egy másik módja annak, hogy eltávolítson egy elemet a szótárból, a del kulcsszó használata. Segíthet az egyes elemek, következésképpen az egész szótár objektum törlésében.
itt a fenti kódrészlet futtatásának eredménye.,
a fenti példában a második utolsó utasítás eltávolítja az összes elemet a Python szótárból, üresen hagyva.
és az ezt követő hívás a” del ” operátor a szótár objektum eltávolítja azt teljesen. Ezért az utolsó nyomtatási utasítás sikertelen a ” NameError.”
Tudjon meg többet-Tuples in Python
Szótárattribútumok
a Python nem ró semmilyen korlátozást a szótár objektum “értékeire”. A szabványos Python vagy bármilyen egyéni adattípus segítségével alakíthatja ki őket., De, mint korábban említettük, a” kulcsok “nem azonosak az” értékekkel”, és teljesen eltérő kezelhetőségük van.
ezért elengedhetetlen, hogy megjegyezze a következő két tényt a “kulcsok” szótárról.”
- ugyanaz a kulcs nem lehet más érték a szótárban. Megerősíti, hogy egy ismétlődő kulcs nem létezhet. Azonban még akkor is, ha megpróbál egy duplikált kulcsot megadni, csak az utolsó hozzárendelésben megadott értékkel módosítja a meglévő kulcsot.
dict = {"Student Name": "Berry", " Roll No.,': 12, 'tárgy': 'angol', 'Diáknév': 'Kerry'} print("dict:", dict)
a fenti kód végrehajtása megmutatja, hogy a “Diáknév” kulcs megtartja az utolsó hozzárendelt értéket, azaz “Kerry.”
dict: Kerry
- Python azt mondja, hogy a szótár kulcsainak a megváltoztathatatlan adattípusokból kell származniuk. Arra lehet következtetni, hogy csak engedélyezett típusok húrok, számok vagy tuples. Nézze meg az alábbi standard példát.
dict = {: "Berry", " Roll No.,': 12, 'tárgy':'angol'} print("dict:", dict)
a fenti példában a kulcs egy listatípust használ. Mivel a Python nem támogatja ezt, ezért a nyilatkozat létrehoz egy ” TypeError.”
itt van a fenti példa eredménye.
Iterate Dictionary
hasonló a listák, akkor egy” For in ” hurok áthaladni egy szótárban. Általában a billentyűk teszik lehetővé az iterációt.
értsük meg a koncepciót egy egyszerű példával. Kinyomtatja a szótár összes kulcsát egy hurokban.,
dict = {'Student Name': 'Berry', 'Roll No.': 12, 'Subject': 'English'}print("Keys are:")for key in dict: print(key)
a fenti Python kód kimenete a következő.
Keys are:Student NameRoll No.Subject
Kövessen még egy példát, amely alatt kulcsokat nyomtat az értékekkel együtt.
dict = {'Student Name': 'Berry', 'Roll No.': 12, 'Subject': 'English'}print("{Keys}:{Values}")for key, value in dict.items(): print({key},":",{value})
a fenti Python-kód eredménye a következő.
{Keys}:{Values}{'Student Name'} : {'Berry'}{'Roll No.'} : {12}{'Subject'} : {'English'}
szótár megértése
csakúgy, mint egy Python lista, a szótár is lehetővé teszi a megértés, hogy új objektumokat egy iterable egy hurok.,
megadhat egy szótári megértést egy kifejezés használatával, amely tartalmaz egy” kulcs: érték ” párot, amelyet hurok követ, és göndör zárójelekkel van ellátva {}.
kövesse az alábbi példákat, hogy szótárat hozzon létre a megértés szintaxisával.
készítsünk egy szótár objektumot a billentyűk karakterláncával, valamint az értékek számformátumával.
>>> {str(iter):iter for iter in }{'44': 44, '33': 33, '55': 55, '11': 11, '22': 22}
egy másik példa a szótár létrehozására a hétköznapok listájából kulcsként, valamint minden hét hossza értékként.,
>>> weekdays = >>> {w:len(w) for w in weekdays}{'fri': 3, 'tue': 3, 'wed': 3, 'sat': 3, 'thu': 3, 'mon': 3, 'sun': 3}
a szótár megértésében az” enumerate () ” függvényt használhatjuk. Segít megmenteni egy adott elem indexét, amelyet később használhatunk. Ezenkívül egy for hurokban a listaelem helyzete nem látható “felsorolás () nélkül.”
ilyen Python szótárak, amelyek elem index hasznos lehet sok esetben.
>>> {w : i for i, w in enumerate(weekdays)}{'fri': 5, 'tue': 2, 'wed': 3, 'sat': 6, 'thu': 4, 'mon': 1, 'sun': 0}
tagsági teszt
gyorsan megerősíthetjük, hogy van-e kulcs a szótárban, vagy sem a ” in.”Kérjük, vegye figyelembe, hogy a tagsági teszt csak a kulcsokra vonatkozik, nem az értékekre.,
a fenti részlet kimenete a következő.
TrueFalseTrue
Quick wrap up – Python Dictionary
ebben a bemutatóban a Python egyik legjelentősebb témáját fedeztük le. A Python bármelyik tartományában úgy dönt, hogy dolgozik, a szótárak ismerete biztosan segít.
most, ha megtanult valamit ebből a leckéből, akkor ossza meg kollégáival. Ezenkívül csatlakozzon a közösségi média (Facebook/Twitter) fiókjainkhoz, hogy időben frissítéseket kapjon.
legjobb,
TechBeamers