Python

Hvordan slå sammen ordbøker i Python

Hvordan slå sammen ordbøker i Python
Ordbokens datatype brukes i python for å lagre flere verdier med nøkler. En ny ordbok kan opprettes ved å slå sammen to eller flere ordbøker. Sammenslåing av data er nødvendig når du trenger å kombinere samme type data som er lagret i flere ordbøker. For eksempel er avdelingsvise medarbeiderdata for ethvert selskap lagret i mange ordbøker. For å generere en liste over alle ansatte i selskapet, må vi slå sammen dataene fra disse ordbøkene. Det finnes mange måter i Python for sammenslåing av ordbøker. Hvordan du kan slå sammen ordbøker vises i denne artikkelen ved hjelp av forskjellige eksempler.

Eksempel 1: Slå sammen to enkle ordbøker

Oppdater() metoden brukes i python for å kombinere en ordbok med en annen ordbok. Følgende eksempel viser bruken av update () -metoden. Her blir to ordbøker erklært som stdDic1 og stdDic2. Verdiene til stdDic1 vil bli lagt til på slutten av stdDic2. Deretter brukes for loop til å skrive ut nøklene og verdiene til den sammenslåtte ordboken.

# Definer et ordliste for studentliste1
stdDic1 = 'Jony Lever': 'English', 'Meena Ali': 'CSE', 'John Micheal': 'LAW'
# Definer en ordbok over elevlisten2
stdDic2 = 'John Abraham': 'CSE', 'Mily Hossain': 'BBA', 'Ella Binte Nazir': 'EEE'
# Slå sammen den andre ordboken med den første ordboken
stdDic2.oppdatering (stdDic1)
# Skriv ut tastene og verdiene til den sammenslåtte ordboken
for val i stdDic2:
skriv ut ('\ nNavn:', val)
skriv ut ('Avdeling:', stdDic2 [val])

Produksjon:

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

Eksempel 2: Slå sammen en enkel ordbok og en liste over flere ordbøker

Følgende eksempel viser hvordan du kan slå sammen en ordbok med en liste over flere ordbøker. Her heter en ordbok isbn er erklært for å lagre bokens ISBN som en nøkkel og boktype som verdi. En liste over ordbøker navngitt bok er erklært for å lagre boktittel og forfatternavn. zip () -metoden brukes til å bli med ordbøkene eller tuplene, og dict () -metoden brukes til å lage en ordbok. Disse metodene brukes i dette skriptet for å lage en ny ordbok ved å slå sammen isbn og book. Deretter brukes for loop for å få tilgang til verdiene til den sammenslåtte ordboken.

# Forklare en enkel ordbok
isbn = '67533344': 'PHP', '997544333': 'Java', '456688644': 'VB.nett'
# Deklarer en liste over flere ordbøker
book = ['title': 'Murach PHP and MySQL', 'author': 'Joel Murach and Ray Harris',
'title': 'Java The Complete Reference', 'author': 'Herbert Schildt',
'title': 'Begynnende VB.NET ',' author ':' Blair Richard, Matthew Reynolds, and
Thearon Willis ']
# Lag en ny ordbok ved å slå sammen en enkelt og flere ordbøker
mrgDict = dict (zip (isbn, bok))
# Skriv ut tastene og verdiene til den sammenslåtte ordboken
for isbn i mrgDict:
skriv ut ('\ nISBN:', isbn)
print ('Book Name:', mrgDict [isbn] ['title'])
print ('Forfatternavn:', mrgDict [isbn] ['author'])

Produksjon:

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

Eksempel 3: Slå sammen to ordbøker ved hjelp av egendefinert funksjon

To ordbøker kan slås sammen ved hjelp av kopiere() og Oppdater() metoder i python. Her vil ordbokens opprinnelige verdier være uendret. mergeDic () funksjon er definert for å kopiere verdiene til den første ordboken i en variabel som heter slått sammen og legg til verdiene til den andre ordboken i slått sammen. Deretter skrives verdiene til den sammenslåtte ordboken ut.

# Erklær to ordbøker
dict1 = "name": "Abir", "age": 25, "gender": "Male"
dict2 = "profession": "Programmer", "email": "[email protected]"
"Definer en funksjon for å lage en ny ordbok som slår begge tastene sammen
og verdier, av dict1 og dict2 "
def mergeDict (d1, d2):
flettet = d1.kopiere()
slått sammen.oppdatering (d2)
retur slått sammen
# Ring funksjonen for å slå sammen
mrgDict = mergeDict (dict1, dict2)
# Skriv ut verdiene til sammenslått ordbok
for idval i mrgDict:
skriv ut (idval, ':', mrgDict [idval])

Produksjon:

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

Eksempel 4: Slå sammen to ordbøker ved hjelp av (**) operator

Ordbøker kan slås sammen uten å bruke en innebygd eller tilpasset funksjon ved å bruke et enkelt uttrykk. '**'operatør brukes i dette eksemplet for å slå sammen to ordbøker. Her heter to ordbokvariabler dict1 og dict2 blir erklært, slått sammen ved hjelp av '**' operatøren med ordbokvariablene og lagrer verdiene i variabelen, mrgDict.

# Erklære to ordbøker
dict1 = "Moniter": 500, "Mouse": 100, "Keyboard": 250
dict2 = "HDD": 300, "Printer": 50, "Mouse": 50
# Slå sammen ordbøker ved hjelp av '**' - operatoren
mrgDict = ** dict2, ** dict1
# Skriv ut verdiene til sammenslått ordbok
for val i mrgDict:
skriv ut (val, ':', mrgDict [val])

Produksjon:

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

Eksempel 5: Slå sammen to ordbøker basert på vanlige nøkler

Når to ordbøker inneholder samme nøkkel, og hvis verdien på nøkkelen er numerisk, kan det kreve å summere verdiene på tidspunktet for sammenslåing. Dette eksemplet viser hvordan de numeriske verdiene til de samme tastene kan legges til når to ordbøker slås sammen. Her blir to ordbøker kalt store1 og store2 erklært. Tastene og verdiene til butikk1 blir gjentatt for sløyfe og sjekk hvilke nøkler til butikk1 som er lik tastene til butikk2. Hvis noen nøkkel eksisterer, blir verdiene til nøkkelen lagt til.

# Erklær to ordbøker
store1 = 'Penn': 150, 'Blyant': 250, 'Notatbok': 100
store2 = 'Viskelær': 80, 'Penn': 50, 'Sharpner': 30, 'Blyant': 100
 
# Slå sammen verdiene til store2 med store1 med de vanlige tastene
for nøkkel i butikk1:
hvis nøkkel i butikk2:
store1 [key] = store1 [key] + store2 [key]
ellers:
sende
 
# Skriv ut tastene og verdiene til den sammenslåtte ordboken
for val i butikk1:
print (val, ':', store1 [val])

Produksjon:

Kjør skriptet.  Her er to nøkler vanlige i ordbøkene. Dette er 'Pen' og 'Pencil', og verdiene til disse tastene blir lagt til.

Eksempel 6: Slå sammen alle verdiene i ordbøkene ved å telle vanlige nøkler

I forrige eksempel legges de vanlige verdiene til to ordbøker til basert på en bestemt ordbok. Dette eksemplet viser hvordan du slår sammen verdiene til to ordbøker og legger til verdiene til vanlige nøkler på tidspunktet for sammenslåing. Disk() metoden brukes i skriptet for å legge til verdiene til vanlige nøkler.

# Importer tellermodul
fra samlinger importere teller
# Erklær to ordbøker
store1 = 'Penn': 150, 'Blyant': 250, 'Notatbok': 100
store2 = 'Viskelær': 80, 'Penn': 50, 'Sharpner': 30, 'Blyant': 100
 
# Slå sammen verdiene til ordbøker basert på vanlige nøkler
mrgDic = Counter (store1) + Counter (store2)
 
# Skriv ut tastene og verdiene til den sammenslåtte ordboken
for val i mrgDic:
skriv ut (val, ':', mrgDic [val])

Produksjon:

Kjør skriptet. Her inneholder en ordbok tre elementer og en annen ordbok inneholder fire elementer. To nøkler er vanlige i to ordbøker.

Konklusjon:

Du kan slå sammen to eller flere ordbøker basert på programmeringskravene dine. Jeg håper at sammenslåing av ordbøker vil være en enkel oppgave for pythonbrukere etter å ha praktisert eksemplene ovenfor.

Hvordan vise FPS-teller i Linux-spill
Linux-spill fikk et stort press da Valve kunngjorde Linux-støtte for Steam-klient og spillene deres i 2012. Siden den gang har mange AAA- og indiespil...
Hvordan laste ned og spille Sid Meier's Civilization VI på Linux
Introduksjon til spillet Civilization 6 er et moderne syn på det klassiske konseptet som ble introdusert i serien av Age of Empires-spillene. Ideen va...
Hvordan installere og spille Doom på Linux
Introduksjon til Doom Doom-serien stammer fra 90-tallet etter utgivelsen av den originale Doom. Det ble en øyeblikkelig suksess, og fra den tiden og u...