how work with python dictionary tutorial with code examples
Denne vejledning forklarer, hvordan man opretter en Python-ordbog sammen med metoder til at få adgang til, tilføje, ændre, slette og gentage gennem data, der er gemt i en ordbog:
I denne Python-træning for alle , vi kiggede på de mest hyppigt stillede Python Interview Spørgsmål . Denne vejledning forklarer alt om ordbøger i Python sammen med enkle eksempler.
En ordbog i Python er en samling af nøgleværdipar. Hver nøgle er forbundet til værdi, og du kan bruge nøglen til at få adgang til den værdi, der er knyttet til den nøgle.
En nøgle kan være et tal / streng, og nøglens værdi kan være et tal, en streng, en liste eller endda en anden ordbog.
Et realtidseksempel på en ordbog kan findes i slutningen af enhver bog, hvor emner gives i henhold til sidenummeret. Her kan et sidetal betragtes som en nøgle, og emnerne kan betragtes som værdier.
Hvad du lærer:
- Sådan oprettes en ordbog i Python?
- Sådan får du adgang til værdier i en Python-ordbog?
- Hvordan tilføjes nye nøgleværdipar i ordbogen?
- Sådan ændres værdier i ordbogen?
- Sådan slettes nøgleværdipar i en ordbog?
- Iterate Through Python Dictionary
- Indlejring i Python-ordbøger
- Konklusion
- Anbefalet læsning
Sådan oprettes en ordbog i Python?
Python Dictionary oprettes på følgende måde:
Students = {'001':'John','002':'Jane','003':'Rahul','004':'Riya'}
Hver nøgle er forbundet med sin værdi med et kolon, og de enkelte nøgleværdipar adskilles med kommaer. Du kan gemme et vilkårligt antal nøgleværdipar i en ordbog.
Sådan får du adgang til værdier i en Python-ordbog?
For at få adgang til en værdi, der er knyttet til nøglen i ordbogen, skal du angive navnet på ordbogen efterfulgt af dens nøgle i firkantede parenteser.
Indgang:
java vs. c ++
Students = {'001':'John','002':'Jane','003':'Rahul','004':'Riya'} print(Students('001'))
Produktion:
John
Du kan få adgang til flere værdier i ordbogen på følgende måde:
Indgang:
Students = {'001':'John','002':'Jane','003':'Rahul','004':'Riya'} print(Students('001'),Students('002')) # Accessing multiple values
Produktion:
John Jane
Hvordan tilføjes nye nøgleværdipar i ordbogen?
Ordbøger er dynamiske, og vi kan føje et vilkårligt antal nye nøgleværdipar til en eksisterende ordbog.
Lad os tilføje 2 nye studerende til den eksisterende ordbog.
Students = {'001':'John','002':'Jane','003':'Rahul','004':'Riya'} Students('005')='Shane' Students('006')='Melisa'
Således giver vi en gang følgende input:
Students = {'001':'John','002':'Jane','003':'Rahul','004':'Riya'} Students('005')='Shane' Students('006')='Melisa' print(Students)
Output vil være:
{'001': 'John', '002': 'Jane', '003': 'Rahul', '004': 'Riya', '005': 'Shane', '006': 'Melisa'}
Nu kan vi også få adgang til de nyligt tilføjede nøgleværdipar:
Indgang:
print(Students('005'))
Produktion:
Shane
Sådan ændres værdier i ordbogen?
For at ændre en værdi i en ordbog skal vi give navnet på ordbogen efterfulgt af nøglen i parentes og derefter den nye værdi, der er knyttet til den nøgle.
Antag i følgende ordbog:
Students = {'001':'John','002':'Jane','003':'Rahul','004':'Riya','005':'Shane','006':'Melisa'}
Vi vil ændre værdien forbundet med nøgle 001 til David, så kan vi simpelthen gøre det på følgende måde.
Students('001') = 'David'
Ved kørsel af programmet:
Indgang:
Students = {'001':'John','002':'Jane','003':'Rahul','004':'Riya','005':'Shane','006':'Melisa'} Students('001') = 'David' print(Students('001'))
Produktion:
David
Sådan slettes nøgleværdipar i en ordbog?
Hvis du ikke længere har brug for et stykke information, der er gemt i en ordbog, kan du blot fjerne eller slette dette stykke information fra ordbogen ved hjælp af del-kommandoen.
Students = {'001':'John','002':'Jane','003':'Rahul','004':'Riya','005':'Shane','006':'Melisa'}
For eksempel, vi vil fjerne - '004': 'Riya' fra ovenstående ordbog, så kan vi bare gøre det ved hjælp af følgende kommando:
del Students('004')
Nu ved at give input:
Students = {'001':'John','002':'Jane','003':'Rahul','004':'Riya','005':'Shane','006':'Melisa'} del Students('004') print(Students)
Output vil være:
{'001': 'John', '002': 'Jane', '003': 'Rahul', '005': 'Shane', '006': 'Melisa'}
Bemærk: Ordbøger følger ikke nogen bestemt rækkefølge. Når du kører programmet, kan du således få output i forskellige sekvenser.
For eksempel,
{'005': 'Shane', '003': 'Rahul', '002': 'Jane', '006': 'Melisa', '001': 'John'}
Dyrke motion:
Skriv et program for at oprette en ordbog over medarbejdere, der inkluderer deres id og navn. Senere tilføj nogle medarbejdere, og opdater oplysningerne om en af medarbejderne, og slet oplysningerne om den medarbejder, der forlader organisationen.
# Oprettelse af en ordbog over medarbejdere
Employees = { 'Emp_001': 'Rahul Khanna', 'Emp_002': 'Surbhi Jain', 'Emp_003': 'Maria Sharapova' } print(Employees)
# Henter oplysninger fra 2. medarbejder
print(Employees('Emp_002'))
# Tilføjelse af yderligere to medarbejdere
Employees('Emp_004')='Ricky Martin' Employees('Emp_005')='Sanaya Malhotra'
# Udskriv ordbog for at kontrollere, om medarbejdere er opdateret
print(Employees)
# Opdatering af Emp_003 - Ændring af navn til Maria Curie
Employees('Emp_003')='Maria Curie'
# Bekræftelse af opdaterede oplysninger
print(Employees('Emp_003'))
# Slet medarbejder 1
del Employees('Emp_001') print(Employees)
Produktion:
{'Emp_001': 'Rahul Khanna', 'Emp_002': 'Surbhi Jain', 'Emp_003': 'Maria Sharapova'}
Surbhi Jain
{'Emp_001': 'Rahul Khanna', 'Emp_002': 'Surbhi Jain', 'Emp_003': 'Maria Sharapova', 'Emp_004': 'Ricky Martin', 'Emp_005': 'Sanaya Malhotra'}
Maria Curie
{'Emp_002': 'Surbhi Jain', 'Emp_003': 'Maria Curie', 'Emp_004': 'Ricky Martin', 'Emp_005': 'Sanaya Malhotra'}
Iterate Through Python Dictionary
Da ordbøger kan indeholde en stor mængde data, lader Python dig løbe gennem ordbogen. Ordbøger kan gemme information på en række forskellige måder, så du kan løbe gennem ordbogen på forskellige måder. Du kan løbe gennem nøgleværdiparene i en ordbog gennem tasterne eller dens værdier.
- Hvordan løber man gennem nøgleværdiparene i ordbogen?
Lad os tage et eksempel på en ny ordbog, der bruges til at gemme oplysninger om fodboldspillere, deres navn, højde og vægt.
Player_1 = { 'Name': 'Peter', 'Height' : '5ft 9inch', 'Weight' : '82 Kg' }
Som du ved, kan du få adgang til et enkelt stykke information baseret på det, du hidtil har lært, men hvordan får du adgang til alle oplysningerne på én gang? Du kan bruge til loop til loop gennem ordbogen.
for key,value in Player_1.items(): print('
Key:' +key) print('Value:' +value)
Som du kan se for at skrive en for-loop til ordbogen, skal du oprette to variabler, der holder henholdsvis en nøgle og værdi. Her har vi taget variabelnavne som nøgle og værdi, men vi kunne have taget ethvert variabelnavn som k, v.
Der vil ikke være nogen forskel i output, hvis vi skriver vores kode på følgende måde:
for k,v in Player_1.items(): print('
Key:' +k) print('Value:' +v)
Den næste del af For-udsagnet inkluderer navnet på ordbogen efterfulgt af metodepunkterne (), der returnerer en liste med nøgleværdiparene. For-sløjfen gemmer derefter hvert af disse par i de to medfølgende variabler. I det foregående eksempel bruger vi variablerne til at udskrive hver nøgle efterfulgt af den tilknyttede værdi.
“ N” i den første udskriftserklæring sikrer, at der indsættes en tom linje før hvert nøgleværdipar i produktion :
hvad åbner en .jar fil
Nøgle: Navn
Værdi: Peter
Nøgle: Højde
Værdi: 5ft 9inch
Nøgle: Vægt
Værdi: 82 kg
- Hvordan løber man gennem alle tasterne i ordbogen?
For at løbe igennem alle tasterne i en ordbog kan du bruge tasterne. Lad os gennemgå alle nøglerne i følgende ordbog.
Player_1 = { 'Name': 'Peter', 'Height' : '5ft 9inch', 'Weight' : '82 Kg' } for attributes in Player_1.keys(): print(attributes.title())
Erklæringen for attributter i Player_1.keys () fortæller Python at trække alle nøglerne fra ordbogen Player_1 og gemme dem en ad gangen i variabelnavnet.
Programmet producerer følgende output:
Navn
Højde
Vægt
Hvis vi giver vores input på følgende måde:
for attributes in Player_1: print(attributes.title())
Der vil ikke være nogen forskel i output, da looping gennem tasterne er ordbogens standardadfærd.
- Hvordan løber man gennem alle værdierne i ordbogen?
Hvis dit formål er at hente alle værdier fra en ordbog, kan du bruge værdimetoden.
Lad os sige i den følgende ordbog, vi vil bare hente elevens navn.
Students = { '001':'John', '002':'Jane', '003':'Rahul', '004':'Riya' } for name in Students.values() print(name.title())
For-udsagnet her henter hver værdi fra ordbogen og gemmer den i variabelnavnet. Udskriftserklæringen udskriver alle navne, og vi får følgende output:
John
Jane
Rahul
Riya
Indlejring i Python-ordbøger
Nogle gange vil du måske gemme et sæt ordbøger på en liste eller en liste over emner som en værdi i en ordbog, og dette kaldes indlejring. Du kan rede et sæt ordbøger inde i en liste, en liste over emner inde i en ordbog eller endda en ordbog inde i en anden ordbog.
Indlejring er en stærk funktion, lad os demonstrere det ved hjælp af eksempler.
Liste over ordbøger
Lad os tage et eksempel på Player Dictionary, der indeholder en række oplysninger om en spiller, men den har ikke plads til at gemme oplysninger om flere antal spillere.
Vi kan simpelthen oprette 3 ordbøger, der hver repræsenterer en anden spiller. Vi pakker hver af disse ordbøger i en liste kaldet Players. Endelig kan vi løbe gennem listen og udskrive hver af dem.
Player_1 = { 'Name' : 'Peter', 'Height' : '5ft 9inch', 'Weight' : '72 Kg' } Player_2 = { 'Name' : 'John', 'Height' : '5ft 7inch', 'Weight' : '82 Kg' } Player_3 = { 'Name' : 'Rahul', 'Height' : '5ft 11inch', 'Weight' : '65 Kg' } Players = (Player_1,Player_2,Player_3) for Player in Players: print(Player)
Produktion:
{'Navn': 'Peter', 'Højde': '5ft 9inch', 'Vægt': '72 Kg '}
{'Navn': 'John', 'Højde': '5ft 7inch', 'Vægt': '82 Kg '}
{'Navn': 'Rahul', 'Højde': '5ft 11 tommer', 'Vægt': '65 Kg '}
Det er almindeligt at gemme et antal ordbøger på en liste, når hver ordbog indeholder flere slags oplysninger om et objekt.
For eksempel, du kan oprette en ordbog for hver bruger på et websted og gemme de enkelte ordbøger på en liste kaldet brugere. Alle ordbøger på listen skal have en identisk struktur, så du kan løbe gennem listen og arbejde med hvert ordbogobjekt på samme måde.
Ordbog i en ordbog
Du kan rede en ordbog i en anden ordbog, men når du gør det, kan din kode hurtigt blive kompliceret. For eksempel, hvis du har flere brugere til et websted, hver med et unikt brugernavn, så kan du bruge brugernavnet som nøgler i en ordbog.
Du kan derefter gemme oplysninger om hver bruger ved hjælp af en ordbog, da værdien er knyttet til deres brugernavn. I den følgende oversigt gemmer vi tre oplysninger om hver bruger, dvs. deres fornavn, efternavn og placering. Vi får adgang til disse oplysninger ved at løbe gennem brugernavne og ordbogen for oplysninger, der er knyttet til hvert brugernavn.
users = { 'Rahul99': { 'first': 'Rahul', 'last': 'Jain', 'location': 'New Delhi', }, 'Jane19': { 'first': 'Jane', 'last': 'Aniston', 'location': 'New York', }, } for user, user_info in users.items(): print('
Username = '+user) print('First name = '+user_info('first')) print('Last name = '+user_info('last')) print('Location = '+user_info('location'))
Vi definerer først en ordbog, der kaldes brugere med to nøgler: en hver til brugernavne 'Rahul99' og 'Jane19'. Den værdi, der er knyttet til hver tast, er en ordbog, der inkluderer hver brugers fornavn, efternavn og placering. Vi gennemgår brugerens ordbog.
Python gemmer hver nøgle i det variable brugernavn, og den ordbog, der er knyttet til hvert brugernavn, går ind i variablen user_info. Når vi først er inde i ordbogens sløjfe, udskriver vi brugernavnet.
Vi begynder at få adgang til den indre ordbog. Den variable user_info, der indeholder ordbogen med brugeroplysninger, har tre nøgler, dvs. 'første', 'sidste' og 'placering'. Vi bruger hver nøgle til at generere fornavnet, efternavnet og placeringen for hver bruger og udskriver derefter et resumé af, hvad vi ved om hver bruger.
Programmets output vil være:
Brugernavn = Rahul99
Fornavn = Rahul
Efternavn = Jain
Placering = New Delhi
Brugernavn = Jane19
Fornavn = Jane
Efternavn = Aniston
Placering = New York
Dyrke motion:
Skriv en ordbog, der hedder byer. Brug navnene på tre byer, der har et vidunder i verden som nøglerne i din ordbog. Opret en ordbog med oplysninger om hver by og medtag det land, byen er i, dens omtrentlige befolkning og navnet Wonder.
Tasterne til hver bys ordbog skal være noget som land, befolkning og under. Udskriv navnet på hver by og alle de oplysninger, du har gemt om den.
# Oprettelse af en ordbog i ordbogen
Cities = { 'Newyork': { 'Country' : 'USA', 'population' : '700k', 'wonder' : 'Statue of Liberty' }, 'Agra': { 'Country' : 'India', 'population' : '300k', 'wonder' : 'Taj Mahal' }, 'Paris': { 'Country' : 'France', 'population' : '500k', 'wonder' : 'Eiffel Tower' } }
# Gennemse alle værdierne i ordbogen
for City, cities_info in Cities.items(): print('
City = ' +City) print(' Country='+cities_info('Country')) print(' Population=' +cities_info('population')) print(' Wonder='+cities_info('wonder'))
Produktion :
By = Newyork
Land = USA
Befolkning = 700k
Wonder = Frihedsgudinden
By = Agra
Land = Indien
Befolkning = 300k
Wonder = Taj Mahal
By = Paris
Land = Frankrig
Befolkning = 500k
Wonder = Eiffeltårnet
Konklusion
I denne vejledning lærte vi, hvordan man definerer en ordbog i Python, og hvordan man arbejder med de oplysninger, der er gemt i en ordbog. Vi lærte også, hvordan man får adgang til og ændrer individuelle elementer i en ordbog.
Derefter undersøgte vi, hvordan man løber gennem ordbog, nest flere ordbøger på listen og nest ordbog i en ordbog.
God læselyst!!
Vi håber, du har haft hele serien af Python-tutorials !! Vi er sikre på, at disse Python-tutorials ville være en komplet guide til begyndere !!
PREV-vejledning | Første vejledning
Anbefalet læsning
- Input-output og filer i Python (Python åben, læse og skrive til fil)
- Python Loops - Til, mens, nestede loops med eksempler
- Python Advanced List Tutorial (List Sort, Reverse, Index, Copy, Join, Sum)
- Python-betingede udsagn: if_else, elif, indlejret hvis udsagn
- Python-filhåndteringsvejledning: Sådan oprettes, åbnes, læses, skrives
- Python introduktion og installationsproces
- Python-liste - Opret, adgang, udskær, tilføj eller slet elementer
- Python OOP-koncepter (Python-klasser, objekter og arv)
- Python-vejledning til begyndere (GRATIS Python-træning)