Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Ordbøker og Ordbokmetoder | Andre Datatyper
Introduksjon til Python

Sveip for å vise menyen

book
Ordbøker og Ordbokmetoder

Ordbøker er kanskje den mest allsidige datastrukturen i Python. De lagrer data som nøkkel-verdi par og er essensielle for situasjoner der data må hentes raskt, og endringer er hyppige.

I vårt dagligvarescenario kan ordbøker effektivt håndtere leverandørinformasjon, slik at hver leverandør kan nås ved navn eller ID uten behov for å søke gjennom en liste.

Se på mens Alex demonstrerer hvordan man bruker ordbøker for vår dagligvarebutikk:

Opprettelse

Ordbøker opprettes ved å omslutte kommaseparerte nøkkel-verdi-par i krøllparenteser {}.

python

Rekkefølge

Ordbøker bevarer innsettingsrekkefølgen av elementene sine, men det er viktig å merke seg at operasjoner vanligvis utføres basert på nøkler snarere enn posisjon.

Mutabilitet (Endringsmulighet)

Ordbøker er mutable, noe som lar deg legge til, oppdatere eller fjerne nøkkel-verdi-par etter at ordboken er opprettet;

Merk

Selv om ordbøker tillater flere verdier, må hver nøkkel være unik innenfor en ordbok. Hvis en nøkkel gjentas under tildelingen, vil den siste verdien overskrive den forrige, og sikre at hver nøkkel kun har én tilsvarende verdi.

Eksempler

La oss se på en enkel ordbok. I stedet for å bruke indeksnumre, får du tilgang til ordbokelementer gjennom nøklene deres, som i dette tilfellet er navnene på dagligvarene.

1234567891011
# Dictionary creation groceryItems = { "Milk": 3.49, "Eggs": 2.99, "Bread": 1.99, "Apples": 0.99 } # Extracting dictionary elements by their keys print("Price of Milk:", groceryItems["Milk"]) print("Price of Bread:", groceryItems["Bread"])
copy

Ordbøker i Python er fleksible når det gjelder hvilke typer data de kan lagre.

Den eneste begrensningen er at nøkler må være av en uforanderlig (ikke-endringsbar) type (slik som strings, numbers eller tuples som kun inneholder uforanderlige elementer). Dette sikrer at nøkkelen forblir uendret.

På den annen side kan ordbokverdier være av hvilken som helst type og kan inkludere foranderlige (endringsbare) typer, som lister eller andre ordbøker.

For eksempel:

123456789
# A dictionary with various types of keys and values store_info = { "Store Name": "Grocery Galore", # String key and string value 42: "Inventory Count", # Integer key and string value ("Bread", "Milk"): [2.99, 1.59] # Tuple key and list value (prices of bread and milk) } # Extracting dictionary element (list) by its key (tuple) print("Data under key ('Bread', 'Milk'):", store_info[("Bread", "Milk")])
copy

Ordbokmetoder

Ordbøker gir en rekke operasjoner og metoder som letter effektiv datahåndtering. Her er noen av de mest brukte metodene:

  • get() : henter verdien for en spesifisert nøkkel, og hvis nøkkelen ikke finnes , returnerer den None . Dette er forskjellig fra å bruke firkantede parenteser (f.eks., grocery_items["Milk"] ), som vil gi en feil hvis nøkkelen ikke eksisterer.;

  • update() : oppdaterer ordboken med elementer fra en annen ordbok eller en iterabel av nøkkel-verdi-par, og overskriver eksisterende nøkler;

  • pop() : fjerner en spesifisert nøkkel og returnerer den tilsvarende verdien.

Merk

I Python er None en spesiell verdi som betyr "ingenting" eller "ingen verdi", og den brukes ofte når du vil vise at noe er tomt eller ikke har et resultat.

Eksempelapplikasjon

Tenk deg at du trenger å oppdatere ordboken for et varelager i dagligvarebutikken din. Slik kan du gjøre det ved hjelp av ordbokmetoder:

12345678910111213141516171819202122
# Dictionary for a grocery store inventory inventory = { "Apples": 30, "Oranges": 18, "Bananas": 45 } # Get the count of Oranges print("Count of Oranges:", inventory.get("Oranges")) # Update inventory by adding a new item inventory.update({"Mangoes": 20}) print("Updated Inventory:", inventory) # You can also add a new item to the end of the dictionary like this inventory["Pineapples"] = 15 print("Updated Inventory:", inventory) # Remove Bananas from the inventory removed_item = inventory.pop("Bananas") print("Removed Item:", removed_item) print("Current Inventory:", inventory)
copy
Oppgave

Swipe to start coding

Administrer en dagligvarebutikks inventar ved å bruke en ordbok, der hver vare er et nøkkel-verdi-par med varens navn og detaljer (produkt-ID og kategori).

  • Definer en ordbok grocery_inventory for å lagre informasjon:

    • "Milk": (113, "Dairy")
    • "Eggs": (116, "Dairy")
    • "Bread": (117, "Bakery")
    • "Apples": (141, "Produce")
  • Hent detaljene for varen "Bread" fra ordboken og lagre dem i variabelen bread_details.

  • Legg til en ny vare, "Cookies", med produkt-ID 143 og kategori "Bakery".

  • Fjern varen "Eggs" fra ordboken.

Outputkrav

  • Skriv ut detaljene for "Bread": Details of Bread: <$bread_details>.
  • Etter å ha lagt til "Cookies", skriv ut det oppdaterte inventaret: Inventory after adding Cookies: <$grocery_inventory>.
  • Etter å ha fjernet "Eggs", skriv ut det oppdaterte inventaret: Inventory after removing Eggs: <$grocery_inventory>.

Løsning

Switch to desktopBytt til skrivebordet for virkelighetspraksisFortsett der du er med et av alternativene nedenfor
Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 4. Kapittel 7

Spør AI

expand
ChatGPT

Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår

book
Ordbøker og Ordbokmetoder

Ordbøker er kanskje den mest allsidige datastrukturen i Python. De lagrer data som nøkkel-verdi par og er essensielle for situasjoner der data må hentes raskt, og endringer er hyppige.

I vårt dagligvarescenario kan ordbøker effektivt håndtere leverandørinformasjon, slik at hver leverandør kan nås ved navn eller ID uten behov for å søke gjennom en liste.

Se på mens Alex demonstrerer hvordan man bruker ordbøker for vår dagligvarebutikk:

Opprettelse

Ordbøker opprettes ved å omslutte kommaseparerte nøkkel-verdi-par i krøllparenteser {}.

python

Rekkefølge

Ordbøker bevarer innsettingsrekkefølgen av elementene sine, men det er viktig å merke seg at operasjoner vanligvis utføres basert på nøkler snarere enn posisjon.

Mutabilitet (Endringsmulighet)

Ordbøker er mutable, noe som lar deg legge til, oppdatere eller fjerne nøkkel-verdi-par etter at ordboken er opprettet;

Merk

Selv om ordbøker tillater flere verdier, må hver nøkkel være unik innenfor en ordbok. Hvis en nøkkel gjentas under tildelingen, vil den siste verdien overskrive den forrige, og sikre at hver nøkkel kun har én tilsvarende verdi.

Eksempler

La oss se på en enkel ordbok. I stedet for å bruke indeksnumre, får du tilgang til ordbokelementer gjennom nøklene deres, som i dette tilfellet er navnene på dagligvarene.

1234567891011
# Dictionary creation groceryItems = { "Milk": 3.49, "Eggs": 2.99, "Bread": 1.99, "Apples": 0.99 } # Extracting dictionary elements by their keys print("Price of Milk:", groceryItems["Milk"]) print("Price of Bread:", groceryItems["Bread"])
copy

Ordbøker i Python er fleksible når det gjelder hvilke typer data de kan lagre.

Den eneste begrensningen er at nøkler må være av en uforanderlig (ikke-endringsbar) type (slik som strings, numbers eller tuples som kun inneholder uforanderlige elementer). Dette sikrer at nøkkelen forblir uendret.

På den annen side kan ordbokverdier være av hvilken som helst type og kan inkludere foranderlige (endringsbare) typer, som lister eller andre ordbøker.

For eksempel:

123456789
# A dictionary with various types of keys and values store_info = { "Store Name": "Grocery Galore", # String key and string value 42: "Inventory Count", # Integer key and string value ("Bread", "Milk"): [2.99, 1.59] # Tuple key and list value (prices of bread and milk) } # Extracting dictionary element (list) by its key (tuple) print("Data under key ('Bread', 'Milk'):", store_info[("Bread", "Milk")])
copy

Ordbokmetoder

Ordbøker gir en rekke operasjoner og metoder som letter effektiv datahåndtering. Her er noen av de mest brukte metodene:

  • get() : henter verdien for en spesifisert nøkkel, og hvis nøkkelen ikke finnes , returnerer den None . Dette er forskjellig fra å bruke firkantede parenteser (f.eks., grocery_items["Milk"] ), som vil gi en feil hvis nøkkelen ikke eksisterer.;

  • update() : oppdaterer ordboken med elementer fra en annen ordbok eller en iterabel av nøkkel-verdi-par, og overskriver eksisterende nøkler;

  • pop() : fjerner en spesifisert nøkkel og returnerer den tilsvarende verdien.

Merk

I Python er None en spesiell verdi som betyr "ingenting" eller "ingen verdi", og den brukes ofte når du vil vise at noe er tomt eller ikke har et resultat.

Eksempelapplikasjon

Tenk deg at du trenger å oppdatere ordboken for et varelager i dagligvarebutikken din. Slik kan du gjøre det ved hjelp av ordbokmetoder:

12345678910111213141516171819202122
# Dictionary for a grocery store inventory inventory = { "Apples": 30, "Oranges": 18, "Bananas": 45 } # Get the count of Oranges print("Count of Oranges:", inventory.get("Oranges")) # Update inventory by adding a new item inventory.update({"Mangoes": 20}) print("Updated Inventory:", inventory) # You can also add a new item to the end of the dictionary like this inventory["Pineapples"] = 15 print("Updated Inventory:", inventory) # Remove Bananas from the inventory removed_item = inventory.pop("Bananas") print("Removed Item:", removed_item) print("Current Inventory:", inventory)
copy
Oppgave

Swipe to start coding

Administrer en dagligvarebutikks inventar ved å bruke en ordbok, der hver vare er et nøkkel-verdi-par med varens navn og detaljer (produkt-ID og kategori).

  • Definer en ordbok grocery_inventory for å lagre informasjon:

    • "Milk": (113, "Dairy")
    • "Eggs": (116, "Dairy")
    • "Bread": (117, "Bakery")
    • "Apples": (141, "Produce")
  • Hent detaljene for varen "Bread" fra ordboken og lagre dem i variabelen bread_details.

  • Legg til en ny vare, "Cookies", med produkt-ID 143 og kategori "Bakery".

  • Fjern varen "Eggs" fra ordboken.

Outputkrav

  • Skriv ut detaljene for "Bread": Details of Bread: <$bread_details>.
  • Etter å ha lagt til "Cookies", skriv ut det oppdaterte inventaret: Inventory after adding Cookies: <$grocery_inventory>.
  • Etter å ha fjernet "Eggs", skriv ut det oppdaterte inventaret: Inventory after removing Eggs: <$grocery_inventory>.

Løsning

Switch to desktopBytt til skrivebordet for virkelighetspraksisFortsett der du er med et av alternativene nedenfor
Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 4. Kapittel 7
Switch to desktopBytt til skrivebordet for virkelighetspraksisFortsett der du er med et av alternativene nedenfor
Vi beklager at noe gikk galt. Hva skjedde?
some-alt