Python Dictionary-Skapa, lägga till, Uppdatera, ta bort

i den här klassen kommer du att upptäcka vad Python Dictionary är och hur man skapar den. Du lär dig också att lägga till, uppdatera, ta bort och söka element i ett ordboksobjekt.

en ordbok i Python är en förvrängd samling av objekt. Till skillnad från andra datatyper som en lista eller en uppsättning som har ett enda värdefält lagrar ordbokstypen en nyckel tillsammans med dess värde.,

tangenterna paras ihop med värden med ett kolon (:) medan kommatecken fungerar som separator för elementen. Dessutom använder hela ordboksobjektet lockiga hängslen för att bifoga sig själv.

nedan är ett exempel på ett kargt ordboksobjekt som inte har några element.

#The empty Python dictionary object{}

Kom ihåg att endast nycklar i en ordbok inte kan ha dubbletter, men deras värden kan upprepa sig.

därefter kan värdet i en ordbok vara av vilken giltig Python-datatyp som helst. Men nycklarna har en begränsning att vara av några oföränderliga datatyper som en sträng, ett tal eller en tupel.,

ordbok i Python

skapa ordböcker

om du vill skapa en Python-ordbok med fasta nycklar och värden är det ganska enkelt att göra det. Bara kombinera alla ”key1: value1, key2: value2, …” Par och bifoga med lockiga hängslen.

kombinationen av en nyckel och dess värde, dvs. ”key: value” representerar ett enda element i en ordbok i Python.

När du definierar statiska ordboksobjekt måste du vara försiktig med att använda unika värden för nycklar. De kan dock härleda från vilken giltig Python – datatyp som helst.,

kom också ihåg att endast använda oföränderliga datatyper för värdena medan de kan ha dubbletter.

Läs om – Python strängar

ordbok operationer

Python dictionary har nyckeln som en extra parameter. Vi kan komma åt elementen i en ordbok med hjälp av nycklar genom att använda dem som Index till matrisoperatören () eller skicka som Argument till get () – metoden.

båda metoderna fungerar på samma sätt, men den förstnämnda returnerar en KeyError medan den senare returnerar ingen om elementet inte är tillgängligt.,

att köra kodavsnittet ovan resulterar i följande utdata.

dict: Berrydict: 12dict: English

åtkomst till ett element med en obefintlig nyckel kommer att returnera ett fel. Kolla in koden nedan.

dict = {'Student Name': 'Berry', 'Roll No.': 12, 'Subject': 'English'}print("dict: ", dict)

exemplet ovan använder ”Name” – tangenten som inte finns. Kör samma skulle producera en ” KeyError.”

i nästa exempel kommer vi åt elementen i en Python-ordbok med funktionen get ().

den här koden ger följande resultat.,

Berry12English

lägg i en ordbok

Du kan lägga till ett nytt objekt till ett befintligt dict-objekt med element på följande två sätt.

tilldelning för att lägga till element

>>> dict_append = {"1" : "Python", "2" : "Java"}>>> print(dict_append){'1': 'Python', '2': 'Java'}>>> dict_append = "CSharp">>> print(dict_append){'1': 'Python', '3': 'CSharp', '2': 'Java'}>>>

uppdateringsmetod för att lägga till element

Du kan ringa ordbokens uppdateringsmetod för att lägga till ett nytt element i det. Vi utökar exemplet ovan, se nedan:

>>> dict_append.update({"4" : "JavaScript"})>>> print(dict_append){'1': 'Python', '3': 'CSharp', '2': 'Java', '4': 'JavaScript'}>>>

uppdatera en ordbok

Python gjorde det möjligt att mutera lexikonobjektet., Därför är tilläggs-eller uppdateringsoperationerna tillåtna. Du kan trycka på ett nytt objekt eller ändra befintliga med hjälp av uppdragsoperatören.

När du lägger till ett element vars nyckel redan finns kommer värdet att ändras till det nya värdet. När du lägger till ett nytt ”nyckel: värde” – par kommer ett nytt element att läggas till i ordlistan.

använd uppdrag

i exemplet nedan visar vi både uppdateringen och tilläggsoperationerna på det befintliga ordboksobjektet.

utförandet av ovanstående kod kommer att producera följande utdata.,

The student who left: BerryThe student who replaced: LarryThe student who joined: Jarry

använd uppdateringsmetoden

Du kan alternativt anropa uppdateringsmetoden för att ändra värdet för ett befintligt element. Se exemplet nedan.

låt oss återuppta föregående exempel. Den har ett dict-objekt som innehåller en nyckel som ”studentnamn”. Vi uppdaterar dess värde.

ta bort element

Python ger oss ett nej. metoder för att ta bort element från ordlistan.

den vanligaste av dem är ”pop ()” – metoden. Det tar nyckeln som ingång och tar bort motsvarande element från Python-ordlistan., Det returnerar värdet som är associerat med inmatningsnyckeln.

en annan metod är ”popitem()”. Det tar bort och returnerar ett slumpmässigt element (nyckel, värde) från ordlistan.

om du vill släppa alla element från ordlistan, använd sedan ”clear ()” – metoden för att spola allt.

ändå är ett annat sätt att ta bort ett element från en ordlista att använda Del-sökordet. Det kan hjälpa dig att ta bort enskilda objekt och därmed hela ordlistan objektet.

här är resultatet av att köra kodavsnittet ovan.,

i exemplet ovan tar det andra sista uttalandet bort alla element från Python-ordlistan och lämnar det tomt.

och det efterföljande samtalet till ”del” – operatören på ordboksobjektet tar bort det helt och hållet. Därför misslyckas det sista utskriftsdeklarationen med ” Namnetfel.”

lär dig om – Tuples i Python

Lexikonattribut

Python ställer inga begränsningar på” värden ” för ett ordboksobjekt. Du kan bilda dem med standard Python eller några anpassade datatyper., Men, som vi sa tidigare, ”nycklar” är inte samma som ”värden” och har helt olika hantering.

därför är det viktigt för dig att memorera följande två fakta om ordlistan ”nycklar.”

  • samma nyckel kan inte ha ett annat värde i ordlistan. Det bekräftar att en dubblettnyckel inte kan existera. Men även om du försöker ange en dubblettnyckel ändrar den bara den befintliga nyckeln med det värde som anges i den senaste tilldelningen.
dict = {"Student Name': 'Bär', 'Roll Nr.,': 12,' Subject':'engelska',' student Name':'Kerry'} print("dict:", dict)

genom att köra ovanstående kod visas att nyckeln ”Student Name” behåller det senast tilldelade värdet, dvs. ”Kerry.”

dict: Kerry
  • Python säger att ordbokstangenterna ska härleda från de oföränderliga datatyperna. Du kan dra slutsatsen att endast tillåtna typer är strängar, siffror eller tuples. Kolla in ett standardexempel nedan.
dict = {: 'Bär', 'Roll Nr.,': 12,' Subject':'engelska'} skriv ut("dict:", dict)

I ovanstående exempel använder nyckeln en listtyp. Eftersom Python inte stöder detta, kommer uttalandet att generera en ” TypeError.”

här är resultatet av ovanstående exempel.

Iterate Dictionary

i likhet med listorna kan du använda en ”for in” – slinga för att passera genom en ordbok. I allmänhet är det nycklarna som möjliggör iteration.

låt oss förstå konceptet med ett enkelt exempel. Den skriver ut alla nycklar i en ordbok i en slinga.,

dict = {'Student Name': 'Berry', 'Roll No.': 12, 'Subject': 'English'}print("Keys are:")for key in dict: print(key)

produktionen av ovanstående Python-kod är som följer.

Keys are:Student NameRoll No.Subject

följ ytterligare ett exempel under vilket skriver ut nycklar tillsammans med värden.

dict = {'Student Name': 'Berry', 'Roll No.': 12, 'Subject': 'English'}print("{Keys}:{Values}")for key, value in dict.items(): print({key},":",{value})

resultatet av ovanstående Python-kod är som följer.

{Keys}:{Values}{'Student Name'} : {'Berry'}{'Roll No.'} : {12}{'Subject'} : {'English'}

ordlista förståelse

precis som en Python lista, ordlistan tillåter också förståelse för att skapa nya objekt från en iterable i en slinga.,

Du kan ange en ordboksförståelse genom att använda ett uttryck som innehåller ett ”key: value” – par följt av för loop och omslutet med lockiga hängslen {}.

Följ nedanstående exempel för att skapa en ordbok med hjälp av förståelsesyntaxen.

låt oss skapa ett ordboksobjekt med strängtypen för nycklar och nummerformatet för värden.

>>> {str(iter):iter for iter in }{'44': 44, '33': 33, '55': 55, '11': 11, '22': 22}

ett annat exempel på att skapa en ordbok från listan över vardagar som nycklar och längden på varje vecka som värdena.,

>>> weekdays = >>> {w:len(w) for w in weekdays}{'fri': 3, 'tue': 3, 'wed': 3, 'sat': 3, 'thu': 3, 'mon': 3, 'sun': 3}

Vi kan använda funktionen ”enumerate()” i en ordboksförståelse. Det hjälper oss att spara indexet för ett specifikt element som vi kan använda senare. Även i en för slinga är positionen för ett listelement inte synlig utan ” räkna upp ().”

sådana Python-ordböcker som har element index kan vara användbara i många situationer.

>>> {w : i for i, w in enumerate(weekdays)}{'fri': 5, 'tue': 2, 'wed': 3, 'sat': 6, 'thu': 4, 'mon': 1, 'sun': 0}

medlemskap Test

Vi kan snabbt bekräfta om en nyckel finns i en ordbok eller inte använder sökordet ”in.”Observera också att medlemsprovet endast är tillämpligt på nycklar, inte för värden.,

utmatningen från ovanstående utdrag är som följer.

TrueFalseTrue

Quick wrap up – Python Dictionary

i den här handledningen täckte vi ett av de viktigaste ämnena i Python. I vilken domän som helst av Python väljer du att arbeta, att veta ordböcker kommer säkert att hjälpa.

Nu, om du har lärt dig något från den här lektionen, bryr du dig om att dela den med dina kollegor. Anslut också till våra sociala medier (Facebook/Twitter) konton för att få aktuella uppdateringar.

bäst,

TechBeamers

Leave a Comment