Pytonorm

Hur man slår samman ordböcker i Python

Hur man slår samman ordböcker i Python
Ordbokens datatyp används i python för att lagra flera värden med nycklar. En ny ordbok kan skapas genom att slå samman två eller flera ordböcker. Sammanfoga data krävs när du behöver kombinera samma typ av data som lagras i flera ordböcker. Till exempel lagras uppgifter om avdelningsvisa anställda i alla företag i många ordböcker. För att skapa en lista över alla anställda i företaget måste vi slå samman data från dessa ordböcker. Det finns många sätt att slå samman ordböcker i Python. Hur du kan slå samman ordböcker visas i den här artikeln med hjälp av olika exempel.

Exempel 1: Slå samman två enkla ordböcker

uppdatering() metod används i python för att kombinera en ordlista med en annan ordbok. Följande exempel visar användningen av uppdateringsmetoden (). Här förklaras två ordböcker med namnet stdDic1 och stdDic2. Värdena för stdDic1 läggs till i slutet av stdDic2. Därefter används för loop för att skriva ut nycklarna och värdena i den sammanslagna ordboken.

# Definiera en ordlista för studentlistan1
stdDic1 = 'Jony Lever': 'engelska', 'Meena Ali': 'CSE', 'John Micheal': 'LAW'
# Definiera en ordlista med studentlista2
stdDic2 = 'John Abraham': 'CSE', 'Mily Hossain': 'BBA', 'Ella Binte Nazir': 'EEE'
# Slå ihop den andra ordboken med den första ordboken
stdDic2.uppdatering (stdDic1)
# Skriv ut nycklarna och värdena för den sammanslagna ordboken
för val i stdDic2:
skriva ut ('\ nNamn:', val)
skriva ut ('Avdelning:', stdDic2 [val])

Produktion:

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

Exempel 2: Slå samman en enkel ordlista och en lista med flera ordböcker

Följande exempel visar hur du kan slå ihop en ordlista med en lista med flera ordböcker. Här heter en ordbok isbn förklaras lagra bokens ISBN som en nyckel och boktyp som värde. En lista med namngivna ordböcker bok förklaras lagra bokens titel och författarnamn. zip () -metoden används för att gå med i ordböckerna eller tuplerna och dict () -metoden används för att skapa en ordbok. Dessa metoder används i detta skript för att skapa en ny ordlista genom att slå samman isbn och book. Därefter används för loop för att komma åt värdena i den sammanslagna ordboken.

# Förklara en enkel ordbok
isbn = '67533344': 'PHP', '997544333': 'Java', '456688644': 'VB.netto'
# Förklara en lista med flera ordböcker
book = ['title': 'Murach PHP and MySQL', 'author': 'Joel Murach and Ray Harris',
'title': 'Java The Complete Reference', 'author': 'Herbert Schildt',
'title': 'Börjar VB.NET ',' author ':' Blair Richard, Matthew Reynolds och
Thearon Willis ']
# Skapa en ny ordbok genom att slå samman en enda och flera ordlistor
mrgDict = dict (zip (isbn, bok))
# Skriv ut nycklarna och värdena för den sammanslagna ordboken
för isbn i mrgDict:
skriva ut ('\ nISBN:', isbn)
skriv ut ('Book Name:', mrgDict [isbn] ['title'])
skriva ut ('Författarens namn:', mrgDict [isbn] ['författare'])

Produktion:

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

Exempel 3: Slå samman två ordböcker med hjälp av anpassad funktion

Två ordböcker kan slås samman med hjälp av kopiera() och uppdatering() metoder i python. Här kommer ordbokens ursprungliga värden att vara oförändrade. mergeDic () funktionen definieras för att kopiera värdena för den första ordlistan i en variabel med namnet sammanslagna och lägg till värdena för den andra ordboken i sammanslagna. Därefter skrivs värdena i den sammanslagna ordboken ut.

# Förklara två ordböcker
dict1 = "name": "Abir", "age": 25, "gender": "Man"
dict2 = "profession": "Programmerare", "email": "[email protected]"
"Definiera en funktion för att skapa en ny ordlista som slår samman båda tangenterna
och värden, av dict1 och dict2 "
def mergeDict (d1, d2):
sammanslagna = d1.kopiera()
sammanslagna.uppdatering (d2)
retur sammanfogad
# Ring funktionen för att slå samman
mrgDict = mergeDict (dict1, dict2)
# Skriv ut värdena för den sammanslagna ordboken
för idval i mrgDict:
skriv ut (idval, ':', mrgDict [idval])

Produktion:

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

Exempel 4: Sammanfoga två ordböcker med hjälp av (**) -operatören

Ordböcker kan slås samman utan att använda en inbyggd eller anpassad funktion med ett enda uttryck. '**'används i detta exempel för att slå samman två ordböcker. Här namnges två ordboksvariabler dict1 och dict2 deklareras, slås samman genom att använda '**' operatören med ordboksvariablerna och lagrar värdena i variabeln, mrgDict.

# Förklara två ordböcker
dict1 = "Moniter": 500, "Mus": 100, "Tangentbord": 250
dict2 = "HDD": 300, "Skrivare": 50, "Mus": 50
# Slå samman ordböcker med hjälp av '**' - operatören
mrgDict = ** dict2, ** dict1
# Skriv ut värdena för den sammanslagna ordboken
för val i mrgDict:
skriva ut (val, ':', mrgDict [val])

Produktion:

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

Exempel 5: Sammanfoga två ordböcker baserat på vanliga tangenter

När två ordböcker innehåller samma nyckel och om nyckelvärdet är numeriskt kan det kräva att summera värdena vid sammanslagningen. Det här exemplet visar hur de numeriska värdena för samma tangenter kan läggas till vid sammanslagning av två ordböcker. Här deklareras två ordböcker med namnet store1 och store2. Nycklarna och värdena för store1 iteras igenom för loop och kontrollera vilka nycklar för store1 som är lika med tangenterna för store2. Om någon nyckel finns kommer värdena för nyckeln att läggas till.

# Förklara två ordböcker
store1 = 'Pen': 150, 'Penna': 250, 'Anteckningsbok': 100
store2 = 'Eraser': 80, 'Pen': 50, 'Sharpner': 30, 'Pencil': 100
 
# Slå ihop värdena för store2 med store1 med de vanliga tangenterna
för nyckel i butik1:
om nyckel i butik2:
store1 [key] = store1 [key] + store2 [key]
annan:
passera
 
# Skriv ut nycklarna och värdena för den sammanslagna ordboken
för val i butik1:
skriva ut (val, ':', store1 [val])

Produktion:

Kör manuset.  Här är två nycklar vanliga i ordböckerna. Dessa är 'Pen' och 'Pencil' och värdena för dessa tangenter läggs till.

Exempel 6: Sammanfoga alla värden i ordböckerna genom att räkna vanliga tangenter

I föregående exempel läggs de gemensamma värdena för två ordböcker till baserat på en viss ordlista. Det här exemplet visar hur du sammanfogar värdena i två ordböcker och lägger till värdena för vanliga nycklar vid tidpunkten för sammanslagningen. Disken() metoden används i skriptet för att lägga till värdena för vanliga nycklar.

# Importera räknermodul
från samlingens importräknare
# Förklara två ordböcker
store1 = 'Pen': 150, 'Pencil': 250, 'Anteckningsbok': 100
store2 = 'Eraser': 80, 'Pen': 50, 'Sharpner': 30, 'Pencil': 100
 
# Slå samman värden på ordböcker baserat på vanliga nycklar
mrgDic = Counter (store1) + Counter (store2)
 
# Skriv ut nycklarna och värdena för den sammanslagna ordboken
för val i mrgDic:
skriva ut (val, ':', mrgDic [val])

Produktion:

Kör manuset. Här innehåller en ordlista tre element och en annan ordlista innehåller fyra element. Två tangenter är vanliga i två ordböcker.

Slutsats:

Du kan slå samman två eller flera ordböcker baserat på dina programmeringskrav. Jag hoppas att sammanslagning av ordböcker kommer att vara en lätt uppgift för pythonanvändare efter att ha övat på ovanstående exempel.

Bästa spel att spela med handspårning
Oculus Quest introducerade nyligen den fantastiska idén om handspårning utan kontroller. Med ett ständigt ökande antal spel och aktiviteter som utför ...
Hur man visar OSD-överlägg i helskärms Linux-appar och -spel
Att spela helskärmsspel eller använda appar i distraktionsfritt helskärmsläge kan avskärma dig från relevant systeminformation som syns i en panel ell...
Topp 5 spelinspelningskort
Vi har alla sett och älskat streaming av spel på YouTube. PewDiePie, Jakesepticye och Markiplier är bara några av de bästa spelarna som har tjänat mil...