dict
Mire használható a dict?
A dictionary (szótár) adattípus a Python egyik legfontosabb adatszerkezete. A dictionary egy kulcs-érték párokból álló gyűjtemény, ahol az egyes kulcsokhoz különböző értékek tartoznak. A dictionaryket kapcsolati adatbázisokhoz hasonlítják, ahol a kulcsok egy adott rekordra, míg az értékek a rekord adataira utalnak.
A dictionary adatszerkezet létrehozásakor a kulcsokat és az értékeket kettősponttal elválasztva, a kulcs-érték párokat pedig vesszővel elválasztva adhatjuk meg, zárójelek között. A kulcsok tetszőleges hashelhető típusok lehetnek, például számok vagy karakterláncok.
A dictionary adatszerkezetben a kulcsok egyediek, azaz nem lehetnek többször előforduló kulcsok. Ha egy kulcsot felülírunk egy másik értékkel, az előző kulcshoz tartozó érték elvész. Az értékek bármilyen típusúak lehetnek, beleértve a listákat és más dictionaryket is.
Az értékekhez a kulcsok alapján könnyen hozzáférhetünk, csak a kulcsot kell megadni a dictionary négyzetes zárójelben történő indexelésekor. Ha egy olyan kulcsra hivatkozunk, amely nem szerepel a dictionary-ben, akkor KeyError kivétel keletkezik.
Dictionary használata - Példa
telefonszamok = {'John': '555-1234', 'Jane': '555-5678', 'Bob': '555-9012'}
print(telefonszamok['John']) # eredmény: '555-1234'
Ebben a példában a telefonszamok dictionary három kulcs-érték párt tartalmaz, ahol a kulcsok szöveges típusúak (John, Jane és Bob), az értékek pedig szintén szöveges típusúak (telefonszámok). A példában láthatjuk, hogy a dictionaryben tárolt adatokhoz a kulcsok alapján könnyedén hozzáférhetünk az indexelés segítségével.
Öszetett - Példa
# Adott egy szótár, amely a boltban kapható termékek adatait tartalmazza
inventory = {
"alma": {
"mennyiseg": 10,
"egysegar": 100,
"cikkszam": "A001"
},
"körte": {
"mennyiseg": 5,
"egysegar": 150,
"cikkszam": "A002"
},
"banán": {
"mennyiseg": 20,
"egysegar": 50,
"cikkszam": "A003"
}
}
# Ellenőrizzük, hogy van-e a boltban banán
if "banán" in inventory:
print("Van banán a boltban.")
else:
print("Nincs banán a boltban.")
# Módosítsuk a banán darabszámát 25-re
inventory["banán"]["mennyiseg"] = 25
# Ellenőrizzük, hogy módosult-e a banán darabszáma
print("A boltban most {} darab banán van.".format(inventory["banán"]["mennyiseg"]))
# Adjuk hozzá egy új termék adatait a szótárhoz
inventory["szőlő"] = {
"mennyiseg": 12,
"egysegar": 200,
"cikkszam": "A004"
}
# Ellenőrizzük, hogy hozzáadódott-e az új termék a szótárhoz
if "szőlő" in inventory:
print("Hozzáadva a szőlő a bolt kínálatához.")
else:
print("Hiba: nem sikerült hozzáadni a szőlőt a bolt kínálatához.")
Ez a példa egy boltban kapható termékek adatait tárolja egy dict
adattípusban. Minden terméknek van egy neve, mennyisége, egységára és cikkszáma. A kód bemutatja, hogyan lehet hozzáadni és módosítani a szótárhoz tartozó adatokat, valamint hogyan lehet ellenőrizni, hogy a szótár tartalmazza-e adott termék adatait.