Python

Hvordan bruke Python ordbok med ordbøker

Hvordan bruke Python ordbok med ordbøker
I de fleste programmeringsspråk brukes en assosiativ matrise til å lagre data ved hjelp av nøkkelverdipar. Ordbøker brukes i Python for å utføre den samme oppgaven. De krøllete parentesene () brukes til å erklære hvilken som helst ordbokvariabel. Ordboken inneholder en unik nøkkelverdi som en indeks, og hver nøkkel representerer en bestemt verdi. De tredje parentesene ([]) skal lese verdien til en bestemt nøkkel.  En annen datatype eksisterer i Python for å lagre flere data som kalles List. Listen fungerer som en numerisk matrise, og indeksen starter fra 0 og opprettholder rekkefølgen. Men nøkkelverdiene i ordboken inneholder forskjellige typer verdier som ikke trenger å opprettholde noen orden. Når en eller flere ordbøker blir erklært i en annen ordbok, kalles den en nestet ordbok eller ordbøker for ordboken. Hvordan du kan erklære nestede ordbøker og få tilgang til data fra dem, er beskrevet i denne artikkelen ved hjelp av forskjellige eksempler.

Eksempel 1: Erklær nestet ordbok

En ordbokvariabel kan lagre en annen ordbok i nestet ordbok. Følgende eksempel viser hvordan nestet ordbok kan erklæres og få tilgang til ved hjelp av python. Her, 'kurs'er en nestet ordbok som inneholder annen ordbok med tre elementer i hver tast. Neste, til loop brukes til å lese verdien av hver nøkkel i den nestede ordboken.

# Lag en nestet ordbok
kurs = 'bash': 'klasser': 10, 'timer': 2, 'avgift': 500,
'PHP': 'klasser': 30, 'timer': 2, 'avgift': 1500,
'Angular': 'classes': 10, 'hours': 2, 'fee': 1000
 
# Skriv ut tastene og verdiene til ordboken
for kurs i kurs:
skriv ut ('\ nKursnavn:', kurs)
print ('Totalt antall klasser:', kurs [kurs] ['klasser'])
print ('Timer:', kurs [kurs] ['timer'])
print ('Fee: $', courses [course] ['fee'])

Produksjon:

Kjør skriptet. Følgende utdata vises etter kjøring av skriptet.

Eksempel 2: Sett inn data ved hjelp av en spesifikk nøkkel i en nestet ordbok

Nye data kan settes inn eller eksisterende data kan endres i ordboken ved å definere spesifikk nøkkel i ordboken. Hvordan du kan sette inn nye verdier i en nestet ordbok ved å bruke nøkkelverdier, vises i dette eksemplet. Her, 'Produkter' er nestet ordbok med tre elementer som inneholder en annen ordbok. En ny nøkkel er definert for denne ordboken for å sette inn nye elementer. Deretter tildeles tre verdier ved hjelp av tre nøkkelverdier og skrives ut ordboken ved hjelp av til Løkke.

# Lag en nestet ordbok
produkter = 't121': 'name': '42 "Sony TV ',' brand ':' Sony ',' price ': 600,
'c702': 'name': 'Camera 8989', 'brand': 'Cannon', 'price': 400,
'm432': 'name': 'Samsung Galaxy j10', 'brand': 'Samsung', 'price': 200
# Definer nøkkel for ny ordbokoppføring
produkter ['m123'] =
# Legg til verdier for ny oppføring
products ['m123'] ['name'] = 'iPhone 10'
products ['m123'] ['brand'] = 'Apple'
produkter ['m123'] ['pris'] = 800
# Skriv ut tastene og verdiene til ordboken etter innsetting
for pro i produkter:
skriv ut ('\ nNavn:', produkter [pro] ['navn'])
print ('Brand:', products [pro] ['brand'])
print ('Pris: $', produkter [pro] ['pris'])

Produksjon:

Kjør skriptet. Følgende utdata vises etter kjøring av skriptet.

Eksempel 3: Sett inn en ordbok i den nestede ordboken

Dette eksemplet viser hvordan en ny ordbok kan settes inn som et nytt element for en nestet ordbok. Her tildeles en ny ordbok som en verdi i en ny nøkkel for 'Produkterordbok.

# Lag en nestet ordbok
produkter = 't121': 'name': '42 "Sony TV ',' brand ':' Sony ',' price ': 600,
'c702': 'name': 'Camera 8989', 'brand': 'Cannon', 'price': 400
# Legg til ny ordbok
products ['f326'] = 'name': 'Kjøleskap', 'brand': 'LG', 'price': 700
# Skriv ut tastene og verdiene til ordboken etter innsetting
for pro i produkter:
print ('Name:', products [pro] ['name'], ','
'Merke:', produkter [pro] ['merke'], ','
'Pris: $', produkter [pro] ['pris'])

Produksjon:

Kjør skriptet. Følgende utdata vises etter kjøring av skriptet.

Eksempel 4: Slett data basert på nøkkel fra nestet ordbok

Dette eksemplet viser hvordan du kan slette en verdi av en nestet ordbok basert på en bestemt nøkkel. Verdien av 'Navn'nøkkel til det andre elementet i'Produkter'ordbok fjernes her. Deretter blir ordbokverdiene skrevet ut basert på nøkler.

# Lag en nestet ordbok
produkter = 't121': 'name': '42 "Sony TV ',' brand ':' Sony ',' price ': 600,
'c702': 'name': 'Camera 8989', 'brand': 'Cannon', 'price': 400,
'a512': 'name': 'AC', 'brand': 'General', 'price': 650
# Slett data fra den nestede ordboken
del products ['c702'] ['name']
utskrift (produkter ['t121'])
trykk (produkter ['c702'])
trykk (produkter ['a512'])

Produksjon:

Kjør skriptet. Følgende utdata vises etter kjøring av skriptet. Ingen verdi for 'Navn'-tasten skrives ut for det andre elementet.

Eksempel 5: Slett en ordbok fra en nestet ordbok

Dette eksemplet viser hvordan du sletter en intern ordbokoppføring fra en nestet ordbok i en uttalelse. I nestet ordbok inneholder hver nøkkel en annen ordbok. Den tredje nøkkelen til den nestede ordboken brukes i 'del' -kommandoen for å slette den interne ordboken som er tilordnet den nøkkelen. Etter sletting skrives den nestede ordboken ut med til Løkke.

# Lag en nestet ordbok
produkter = 't121': 'name': '42 "Sony TV ',' brand ':' Sony ',' price ': 600,
'c702': 'name': 'Camera 8989', 'brand': 'Cannon', 'price': 400,
'a512': 'name': 'AC', 'brand': 'General', 'price': 650
# Slett en ordbok fra den nestede ordboken
del products ['a512']
# Skriv ut tastene og verdiene til ordboken etter sletting
for pro i produkter:
print ('Name:', products [pro] ['name'], ','
'Merke:', produkter [pro] ['merke'], ','
'Pris: $', produkter [pro] ['pris'])

Produksjon:

Kjør skriptet. Følgende utdata vises etter kjøring av skriptet.

Eksempel 6: Fjern de sist innlagte dataene fra en nestet ordbok

popitem () metoden brukes til å slette den siste oppføringen i en ordbok. Den siste oppføringen av 'produkt' ordbok slettes i dette eksemplet ved hjelp av popitem ().

# Lag en nestet ordbok
produkter = 't121': 'name': '42 "Sony TV ',' brand ':' Sony ',' price ': 600,
'c702': 'name': 'Camera 8989', 'brand': 'Cannon', 'price': 400
# Slett den siste ordbokoppføringen
Produkter.popitem ()
 
# Skriv ut tastene og verdiene til ordboken etter sletting
for pro i produkter:
print ('Name:', products [pro] ['name'], ','
'Merke:', produkter [pro] ['merke'], ','
'Pris: $', produkter [pro] ['pris'])

Produksjon:

Kjør skriptet. Følgende utdata vises etter kjøring av skriptet.

Eksempel 7: Få tilgang til nestede ordbøker ved hjelp av get () -metoden

Verdiene til alle nestede ordbøker skrives ut ved hjelp av sløyfe eller nøkler i eksemplene ovenfor. få() metoden kan brukes i python for å lese verdiene til hvilken som helst ordbok. Hvordan verdiene til den nestede ordboken kan skrives ut ved hjelp av få() metoden er vist i dette eksemplet.

# Lag en nestet ordbok
produkter = 't121': 'name': '42 "Sony TV ',' brand ':' Sony ',' price ': 600,
'c702': 'name': 'Camera 8989', 'brand': 'Cannon', 'price': 400
 
# Skriv ut tastene og verdiene til ordboken etter sletting
for pro i produkter:
print ('Name:', produkter [pro].få ('navn'))
print ('Brand', produkter [pro].få ('merke'))

Produksjon:

Kjør skriptet. Følgende utdata vises etter kjøring av skriptet.

Konklusjon

De forskjellige bruksområdene til den nestede ordboken vises i denne artikkelen ved å bruke enkle eksempler for å hjelpe pythonbrukerne til å jobbe med nestede ordbøker.

SuperTuxKart for Linux
SuperTuxKart er en flott tittel designet for å gi deg Mario Kart-opplevelsen gratis på Linux-systemet ditt. Det er ganske utfordrende og morsomt å spi...
Kjemp om Wesnoth-opplæringen
Kampen om Wesnoth er et av de mest populære open source-strategispillene du kan spille på dette tidspunktet. Ikke bare har dette spillet vært i utvikl...
0 A.D. Opplæringen
Ut av de mange strategispillene der ute, 0 A.D. klarer å skille seg ut som en omfattende tittel og et veldig dypt, taktisk spill til tross for å være ...