Pytonorm

Hur man använder Python-ordlistan med ordböcker

Hur man använder Python-ordlistan med ordböcker
I de flesta programmeringsspråk används en associativ matris för att lagra data med hjälp av nyckel-värdepar. Ordböcker används i Python för att göra samma uppgift. De lockiga parenteserna () används för att deklarera valfri ordboksvariabel. Ordboken innehåller ett unikt nyckelvärde som index och varje nyckel representerar ett visst värde. De tredje parenteserna ([]) är att läsa värdet på en viss nyckel.  En annan datatyp finns i Python för att lagra flera data som kallas List. Listan fungerar som en numerisk matris och dess index börjar från 0 och behåller ordning. Men nyckelvärdena i ordboken innehåller olika typer av värden som inte behöver behålla någon ordning. När en eller flera ordböcker deklareras i en annan ordlista kallas det en kapslad ordbok eller ordböcker. Hur du kan förklara kapslade ordböcker och få åtkomst till data från dem beskrivs i den här artikeln med hjälp av olika exempel.

Exempel 1: Förklara kapslad ordbok

En ordboksvariabel kan lagra en annan ordlista i kapslad ordbok. Följande exempel visar hur kapslad ordbok kan deklareras och nås med hjälp av python. Här, 'kurser'är en kapslad ordbok som innehåller en annan ordlista med tre element i varje tangent. Nästa, för loop används för att läsa värdet på varje nyckel i den kapslade ordboken.

# Skapa en kapslad ordbok
kurser = 'bash': 'klasser': 10, 'timmar': 2, 'avgift': 500,
'PHP': 'klasser': 30, 'timmar': 2, 'avgift': 1500,
'Vinkel': 'klasser': 10, 'timmar': 2, 'avgift': 1000
 
# Skriv ut tangenterna och värdena för ordlistan
för kurser i kurser:
skriv ut ('\ nKursnamn:', kurs)
skriv ut ('Totalt antal klasser:', kurser [kurs] ['klasser'])
skriv ut ('Hours:', courses [course] ['hours'])
tryck ('Avgift: $', kurser [kurs] ['avgift'])

Produktion:

Kör manuset. Följande utdata visas efter körning av skriptet.

Exempel 2: Infoga data med en specifik nyckel i en kapslad ordbok

En ny data kan infogas eller befintlig data kan modifieras i ordboken genom att definiera ordlistans specifika nyckel. Hur du kan infoga nya värden i en kapslad ordbok med hjälp av nyckelvärden visas i detta exempel. Här, 'Produkter' är kapslad ordbok med tre element som innehåller en annan ordlista. En ny nyckel definieras för denna ordlista för att infoga nya element. Därefter tilldelas tre värden med tre nyckelvärden och skrivs ut ordboken med för slinga.

# Skapa en kapslad 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
# Definiera nyckel för ny ordbokspost
produkter ['m123'] =
# Lägg till värden för ny post
produkter ['m123'] ['name'] = 'iPhone 10'
produkter ['m123'] ['brand'] = 'Apple'
produkter ['m123'] ['pris'] = 800
# Skriv ut ordbokens tangenter och värden efter infogning
för pro i produkter:
skriva ut ('\ nNamn:', produkter [pro] ['namn'])
tryck ('Brand:', products [pro] ['brand'])
tryck ('Pris: $', produkter [pro] ['pris'])

Produktion:

Kör manuset. Följande utdata visas efter körning av skriptet.

Exempel 3: Infoga en ordbok i den kapslade ordboken

Detta exempel visar hur en ny ordlista kan infogas som ett nytt element för en kapslad ordbok. Här tilldelas en ny ordbok som ett värde i en ny nyckel för 'Produkter' lexikon.

# Skapa en kapslad ordbok
produkter = 't121': 'name': '42 "Sony TV ',' brand ':' Sony ',' price ': 600,
'c702': 'name': 'Camera 8989', 'brand': 'Cannon', 'price': 400
# Lägg till ny ordbok
produkter ['f326'] = 'name': 'Kylskåp', 'brand': 'LG', 'price': 700
# Skriv ut ordbokens tangenter och värden efter infogning
för pro i produkter:
skriva ut ('Namn:', produkter [pro] ['namn'], ','
'Märke:', produkter [pro] ['brand'], ','
'Pris: $', produkter [pro] ['pris'])

Produktion:

Kör manuset. Följande utdata visas efter körning av skriptet.

Exempel 4: Ta bort data baserat på nyckel från kapslad ordbok

Det här exemplet visar hur du kan ta bort ett värde i en kapslad ordbok baserat på en viss nyckel. Värdet av 'namn'nyckel till det andra elementet i'Produkterordlistan tas bort här. Därefter skrivs ordboksvärdena ut baserat på tangenter.

# Skapa en kapslad 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
# Ta bort data från den kapslade ordboken
del products ['c702'] ['name']
skriva ut (produkter ['t121'])
skriva ut (produkter ['c702'])
tryck (produkter ['a512'])

Produktion:

Kör manuset. Följande utdata visas efter körning av skriptet. Inget värde för 'namntangenten skrivs ut för det andra elementet.

Exempel 5: Ta bort en ordlista från en kapslad ordbok

Det här exemplet visar hur du tar bort en intern ordbokspost från en kapslad ordbok i ett uttalande. I kapslad ordbok innehåller varje nyckel en annan ordlista. Den tredje nyckeln i den kapslade ordboken används i kommandot 'del' för att radera den interna ordlistan som tilldelats den nyckeln. Efter radering skrivs den kapslade ordboken ut med för slinga.

# Skapa en kapslad 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
# Ta bort en ordlista från den kapslade ordboken
del produkter ['a512']
# Skriv ut ordbokens tangenter och värden efter radering
för pro i produkter:
skriva ut ('Namn:', produkter [pro] ['namn'], ','
'Märke:', produkter [pro] ['brand'], ','
'Pris: $', produkter [pro] ['pris'])

Produktion:

Kör manuset. Följande utdata visas efter körning av skriptet.

Exempel 6: Ta bort den senast infogade informationen från en kapslad ordbok

popitem () metoden används för att radera den sista posten i en ordlista. Den sista posten i 'produkter' ordlistan raderas i detta exempel med popitem ().

# Skapa en kapslad ordbok
produkter = 't121': 'name': '42 "Sony TV ',' brand ':' Sony ',' price ': 600,
'c702': 'name': 'Camera 8989', 'brand': 'Cannon', 'price': 400
# Ta bort den senaste ordboksposten
Produkter.popitem ()
 
# Skriv ut ordbokens tangenter och värden efter radering
för pro i produkter:
skriva ut ('Namn:', produkter [pro] ['namn'], ','
'Märke:', produkter [pro] ['brand'], ','
'Pris: $', produkter [pro] ['pris'])

Produktion:

Kör manuset. Följande utdata visas efter körning av skriptet.

Exempel 7: Få åtkomst till kapslade ordböcker med metoden get ()

Värdena för alla kapslade ordböcker skrivs ut med hjälp av loop eller tangenter i ovanstående exempel. skaffa sig() Metoden kan användas i python för att läsa värdena i vilken ordbok som helst. Hur värdena i den kapslade ordboken kan skrivas ut med hjälp av skaffa sig() metoden visas i detta exempel.

# Skapa en kapslad ordbok
produkter = 't121': 'name': '42 "Sony TV ',' brand ':' Sony ',' price ': 600,
'c702': 'name': 'Camera 8989', 'brand': 'Cannon', 'price': 400
 
# Skriv ut ordbokens tangenter och värden efter radering
för pro i produkter:
skriva ut ('Namn:', produkter [pro].hämta namn'))
tryck ('Brand', produkter [pro].få ('brand'))

Produktion:

Kör manuset. Följande utdata visas efter körning av skriptet.

Slutsats

De olika användningarna av den kapslade ordboken visas i den här artikeln genom att använda enkla exempel för att hjälpa pythonanvändarna att arbeta med kapslade ordböcker.

Vulkan för Linux-användare
Med varje ny generation grafikkort ser vi spelutvecklare driva gränserna för grafisk trohet och komma ett steg närmare fotorealism. Men trots all kred...
OpenTTD vs Simutrans
Att skapa din egen transportsimulering kan vara rolig, avkopplande och extremt lockande. Det är därför du måste se till att du testar så många spel so...
OpenTTD-handledning
OpenTTD är ett av de mest populära affärssimuleringsspelen där ute. I det här spelet måste du skapa en underbar transportaffär. Du kommer dock att bör...