目次
1. Python sõnastiku (dict) põhialused
Pythonis on sõnastik (dict
) andmestruktuur, mis koosneb võtme-väärtuse paaridest. Erinevalt listidest või tuplidest võimaldab see kasutada võtit, et kiiresti ja tõhusalt andmetele ligi pääseda. Seda struktuuri kasutatakse laialdaselt, näiteks toodete või kasutajate andmete haldamisel.Sõnastiku põhioperatsioonid
Sõnastiku loomiseks kirjutatakse võtme-väärtuse paarid looksulgude{}
sisse, eraldatuna komadega.my_dict = {"apple": 100, "banana": 200, "orange": 150}
Näiteks võti “apple” vastab väärtusele 100. Sõnastikus olevatele elementidele pääseb ligi, määrates võtme järgmiselt:print(my_dict["apple"]) # Tulemus: 100
Ligipääs võtmele []
abil
Kui proovida väärtust võtta võtme kaudu, mis ei eksisteeri, tekib KeyError
.print(my_dict["grape"]) # KeyError: 'grape'
Selline viga peatab programmi töö, mistõttu on vajalik veatöötlus.2. get meetodi põhialused
get
-meetod võimaldab ligipääsu võtmele ilma KeyError
-i tekitamata. Kui võtit pole, tagastatakse None
või määratud vaikeväärtus. See teeb koodi turvalisemaks ja paindlikumaks.get meetodi kasutamine
Kui võti eksisteerib, tagastabget
vastava väärtuse, vastasel juhul tagastatakse None
.my_dict = {"apple": 100, "banana": 200, "orange": 150}
# Kui võti eksisteerib
print(my_dict.get("apple")) # 100
# Kui võtit pole
print(my_dict.get("grape")) # None
Vaikeväärtuse määramine
get
-meetod võimaldab määrata vaikeväärtuse, mida tagastatakse juhul, kui võtit pole.print(my_dict.get("grape", 0)) # Tulemus: 0
Vaikeväärtuse määramine aitab vältida ootamatuid katkestusi ja muudab programmi töökindlamaks.
3. Erinevus get meetodi ja [] ligipääsu vahel
Peamine erinevusget
-meetodi ja []
-ligipääsu vahel seisneb veatöötluses. Kui []
puhul visatakse KeyError
, siis get
tagastab None
või vaikeväärtuse.Veatöötluse erinevus
Näites on näidatud, kuidas erinevad[]
ja get
-meetod:my_dict = {"apple": 100, "banana": 200}
# Ligipääs [] abil
try:
print(my_dict["grape"])
except KeyError:
print("Võtit ei eksisteeri")
# Ligipääs get-meetodi abil
print(my_dict.get("grape", "Võtit ei eksisteeri"))
[]
-ligipääs vajab eraldi veatöötlust, kuid get
-meetod muudab koodi lühemaks ja loetavamaks. Samuti võib see parandada jõudlust, kuna ligipääs toimub ühe sammuga.4. get meetodi praktilised näited
get
-meetod on väga kasulik reaalsetes rakendustes, näiteks API-vastuste või kasutaja sisendi töötlemisel.API vastuse töötlemine
Kui API vastuses puudub kindel võti, saab programmi turvaliselt jätkata:response = {"status": "success", "data": {"name": "Alice"}}
email = response.get("data", {}).get("email", "E-posti aadressi ei ole registreeritud")
print(email) # Tulemus: E-posti aadressi ei ole registreeritud
Nii saab ka pesastatud sõnastikega töötades säilitada koodi turvalisuse ja loetavuse.Sõnastiku initsialiseerimine ja loendamine
get
-meetodit saab kasutada ka elementide loendamiseks ja sõnastike initsialiseerimiseks:counts = {}
items = ["apple", "banana", "apple", "orange"]
for item in items:
counts[item] = counts.get(item, 0) + 1
print(counts) # {'apple': 2, 'banana': 1, 'orange': 1}
Sellisel juhul tagastatakse puuduvate võtmete korral 0
, mis võimaldab elementide loendamist lühikese ja selge koodiga.5. Kokkuvõte
Pythonis onget
-meetod oluline tööriist, mis lihtsustab veatöötlust ja muudab koodi paindlikumaks. Eriti kasulik on see väliste andmete või kasutaja sisendi töötlemisel, kus KeyError
tuleb vältida. Kasutades get
-meetodi võimalusi, saab luua töökindlaid ja tõhusaid Pythoniprogramme.