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

Stryg for at vise menuen

book
Ordbøger og Ordbogsmetoder

Ordbøger er måske den mest alsidige datastruktur i Python. De gemmer data som nøgle-værdi-par og er uundværlige i situationer, hvor data skal hentes hurtigt, og ændringer forekommer hyppigt.

I vores supermarkedsscenarie kan ordbøger effektivt håndtere leverandøroplysninger, så hver leverandør kan tilgås via navn eller ID uden at skulle gennemsøge en liste.

Se med, når Alex demonstrerer, hvordan ordbøger kan anvendes i vores supermarked:

Oprettelse

Ordbøger oprettes ved at omslutte kommaseparerede nøgle-værdi-par med krøllede parenteser {}.

python

Rækkefølge

Ordbøger bevarer indsættelsesrækkefølgen af deres elementer, men det er vigtigt at bemærke, at operationer typisk udføres baseret på nøgler frem for position.

Mutabilitet (Ændringsmulighed)

Ordbøger er mutable og gør det muligt at tilføje, opdatere eller fjerne nøgle-værdi-par efter oprettelse;

Bemærk

Selvom ordbøger tillader flere værdier, skal hver nøgle være unik i en ordbog. Hvis en nøgle gentages under tildeling, vil den seneste værdi overskrive den forrige, hvilket sikrer, at hver nøgle kun har én tilknyttet værdi.

Eksempler

Lad os se på et simpelt dictionary. I stedet for at bruge indeksnumre, får du adgang til dictionary-elementer via deres nøgler, som i dette tilfælde er navnene på dagligvarerne.

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

Dictionaries i Python er fleksible med hensyn til de datatyper, de kan gemme.

Den eneste begrænsning er, at nøgler skal være af en uforanderlig (immutable) type (såsom strings, numbers eller tuples, der kun indeholder uforanderlige elementer). Dette sikrer, at nøglen forbliver uændret.

Omvendt kan dictionary-værdier være af enhver type og kan inkludere foranderlige (mutable) typer, såsom lister eller andre dictionaries.

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

Dictionary-metoder

Dictionaries tilbyder en række operationer og metoder, der muliggør effektiv databehandling. Her er nogle af de mest anvendte metoder:

  • get(): henter værdien for en angivet nøgle, og hvis nøglen ikke findes, returneres None. Dette adskiller sig fra brugen af firkantede parenteser (f.eks. grocery_items["Milk"]), som vil udløse en fejl, hvis nøglen ikke eksisterer;

  • update(): opdaterer dictionary med elementer fra en anden dictionary eller et itererbart objekt af nøgle-værdi-par og overskriver eksisterende nøgler;

  • pop(): fjerner en angivet nøgle og returnerer den tilsvarende værdi.

Bemærk

I Python er None en særlig værdi, der betyder "intet" eller "ingen værdi", og den bruges ofte til at vise, at noget er tomt eller ikke har et resultat.

Eksempel på anvendelse

Forestil dig, at du skal opdatere dictionary for et lager i din dagligvarebutik. Her kan du gøre det ved hjælp af dictionary-metoder:

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
Opgave

Swipe to start coding

Administrer en dagligvarebutiks lager ved hjælp af et dictionary, hvor hver vare er et nøgle-værdi-par med varens navn og detaljer (produkt-ID og kategori).

  • Definér et dictionary grocery_inventory til at gemme information:

    • "Milk": (113, "Dairy")
    • "Eggs": (116, "Dairy")
    • "Bread": (117, "Bakery")
    • "Apples": (141, "Produce")
  • Hent detaljerne for varen "Bread" fra dictionary'et og gem dem i variablen bread_details.

  • Tilføj en ny vare, "Cookies", med produkt-ID 143 og kategori "Bakery".

  • Fjern varen "Eggs" fra dictionary'et.

Outputkrav

  • Udskriv detaljerne for "Bread": Details of Bread: <$bread_details>.
  • Efter tilføjelse af "Cookies", udskriv det opdaterede lager: Inventory after adding Cookies: <$grocery_inventory>.
  • Efter fjernelse af "Eggs", udskriv det opdaterede lager: Inventory after removing Eggs: <$grocery_inventory>.

Løsning

Switch to desktopSkift til skrivebord for at øve i den virkelige verdenFortsæt der, hvor du er, med en af nedenstående muligheder
Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 4. Kapitel 7

Spørg AI

expand
ChatGPT

Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat

book
Ordbøger og Ordbogsmetoder

Ordbøger er måske den mest alsidige datastruktur i Python. De gemmer data som nøgle-værdi-par og er uundværlige i situationer, hvor data skal hentes hurtigt, og ændringer forekommer hyppigt.

I vores supermarkedsscenarie kan ordbøger effektivt håndtere leverandøroplysninger, så hver leverandør kan tilgås via navn eller ID uden at skulle gennemsøge en liste.

Se med, når Alex demonstrerer, hvordan ordbøger kan anvendes i vores supermarked:

Oprettelse

Ordbøger oprettes ved at omslutte kommaseparerede nøgle-værdi-par med krøllede parenteser {}.

python

Rækkefølge

Ordbøger bevarer indsættelsesrækkefølgen af deres elementer, men det er vigtigt at bemærke, at operationer typisk udføres baseret på nøgler frem for position.

Mutabilitet (Ændringsmulighed)

Ordbøger er mutable og gør det muligt at tilføje, opdatere eller fjerne nøgle-værdi-par efter oprettelse;

Bemærk

Selvom ordbøger tillader flere værdier, skal hver nøgle være unik i en ordbog. Hvis en nøgle gentages under tildeling, vil den seneste værdi overskrive den forrige, hvilket sikrer, at hver nøgle kun har én tilknyttet værdi.

Eksempler

Lad os se på et simpelt dictionary. I stedet for at bruge indeksnumre, får du adgang til dictionary-elementer via deres nøgler, som i dette tilfælde er navnene på dagligvarerne.

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

Dictionaries i Python er fleksible med hensyn til de datatyper, de kan gemme.

Den eneste begrænsning er, at nøgler skal være af en uforanderlig (immutable) type (såsom strings, numbers eller tuples, der kun indeholder uforanderlige elementer). Dette sikrer, at nøglen forbliver uændret.

Omvendt kan dictionary-værdier være af enhver type og kan inkludere foranderlige (mutable) typer, såsom lister eller andre dictionaries.

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

Dictionary-metoder

Dictionaries tilbyder en række operationer og metoder, der muliggør effektiv databehandling. Her er nogle af de mest anvendte metoder:

  • get(): henter værdien for en angivet nøgle, og hvis nøglen ikke findes, returneres None. Dette adskiller sig fra brugen af firkantede parenteser (f.eks. grocery_items["Milk"]), som vil udløse en fejl, hvis nøglen ikke eksisterer;

  • update(): opdaterer dictionary med elementer fra en anden dictionary eller et itererbart objekt af nøgle-værdi-par og overskriver eksisterende nøgler;

  • pop(): fjerner en angivet nøgle og returnerer den tilsvarende værdi.

Bemærk

I Python er None en særlig værdi, der betyder "intet" eller "ingen værdi", og den bruges ofte til at vise, at noget er tomt eller ikke har et resultat.

Eksempel på anvendelse

Forestil dig, at du skal opdatere dictionary for et lager i din dagligvarebutik. Her kan du gøre det ved hjælp af dictionary-metoder:

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
Opgave

Swipe to start coding

Administrer en dagligvarebutiks lager ved hjælp af et dictionary, hvor hver vare er et nøgle-værdi-par med varens navn og detaljer (produkt-ID og kategori).

  • Definér et dictionary grocery_inventory til at gemme information:

    • "Milk": (113, "Dairy")
    • "Eggs": (116, "Dairy")
    • "Bread": (117, "Bakery")
    • "Apples": (141, "Produce")
  • Hent detaljerne for varen "Bread" fra dictionary'et og gem dem i variablen bread_details.

  • Tilføj en ny vare, "Cookies", med produkt-ID 143 og kategori "Bakery".

  • Fjern varen "Eggs" fra dictionary'et.

Outputkrav

  • Udskriv detaljerne for "Bread": Details of Bread: <$bread_details>.
  • Efter tilføjelse af "Cookies", udskriv det opdaterede lager: Inventory after adding Cookies: <$grocery_inventory>.
  • Efter fjernelse af "Eggs", udskriv det opdaterede lager: Inventory after removing Eggs: <$grocery_inventory>.

Løsning

Switch to desktopSkift til skrivebord for at øve i den virkelige verdenFortsæt der, hvor du er, med en af nedenstående muligheder
Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 4. Kapitel 7
Switch to desktopSkift til skrivebord for at øve i den virkelige verdenFortsæt der, hvor du er, med en af nedenstående muligheder
Vi beklager, at noget gik galt. Hvad skete der?
some-alt