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 Python-datastruktur. De gemmer data som nøgle-værdi par og er essentielle i situationer, hvor data skal hentes hurtigt, og ændringer er hyppige.

I vores købmandsscenarie kunne ordbøger effektivt håndtere leverandøroplysninger, hvilket gør det muligt at få adgang til hver leverandør ved navn eller ID uden at skulle søge gennem en liste.

Se, hvordan Alex demonstrerer, hvordan man bruger ordbøger til vores købmand:

Oprettelse

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

python

Orden

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 snarere end position.

Mutabilitet (Ændringsevne)

Ordbøger er mutable, hvilket giver dig mulighed for at tilføje, opdatere eller fjerne nøgle-værdi par efter ordbogen er blevet oprettet;

Bemærk

Mens ordbøger tillader flere værdier, skal hver nøgle være unik inden for en ordbog. Hvis en nøgle gentages under tildelingen, vil den seneste værdi overskrive den forrige, hvilket sikrer, at hver nøgle kun har én tilsvarende værdi.

Eksempler

Lad os tage et kig på en simpel ordbog. I stedet for at bruge indeksnumre, får du adgang til ordbogselementer gennem deres nøgler, som i dette tilfælde er navnene på dagligvareartiklerne.

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øger i Python er fleksible, når det kommer til de typer data, 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.

På den anden side kan ordbogsværdier være af enhver type og kan inkludere foranderlige (mutable) typer, såsom lister eller andre ordbøger.

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

Ordbogsmetoder

Ordbøger tilbyder en række operationer og metoder, der letter effektiv datahåndtering. Her er nogle af de mest almindeligt anvendte metoder:

  • get() : henter værdien for en specificeret nøgle, og hvis nøglen ikke findes , returnerer den None . Dette er anderledes end at bruge firkantede parenteser (f.eks. grocery_items["Milk"] ), som ville give en fejl , hvis nøglen ikke eksisterer.;

  • update() : opdaterer ordbogen med elementer fra en anden ordbog eller en iterabel af nøgle-værdi par, overskriver eksisterende nøgler;

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

Bemærk

I Python er None en speciel værdi, der betyder "ingenting" eller "ingen værdi", og det bruges ofte, når du vil vise, at noget er tomt eller ikke har et resultat.

Eksempelapplikation

Forestil dig, at du skal opdatere ordbogen for et lager i din købmandsbutik. Her er, hvordan du kan gøre det ved hjælp af ordbogsmetoder:

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 købmandsforretnings lager ved hjælp af en ordbog, hvor hver vare er et nøgle-værdi par med varens navn og detaljer (produkt ID og kategori).

  • Definer en ordbog grocery_inventory til at gemme information:

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

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

  • Fjern varen "Eggs" fra ordbogen.

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
Vi beklager, at noget gik galt. Hvad skete der?

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 Python-datastruktur. De gemmer data som nøgle-værdi par og er essentielle i situationer, hvor data skal hentes hurtigt, og ændringer er hyppige.

I vores købmandsscenarie kunne ordbøger effektivt håndtere leverandøroplysninger, hvilket gør det muligt at få adgang til hver leverandør ved navn eller ID uden at skulle søge gennem en liste.

Se, hvordan Alex demonstrerer, hvordan man bruger ordbøger til vores købmand:

Oprettelse

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

python

Orden

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 snarere end position.

Mutabilitet (Ændringsevne)

Ordbøger er mutable, hvilket giver dig mulighed for at tilføje, opdatere eller fjerne nøgle-værdi par efter ordbogen er blevet oprettet;

Bemærk

Mens ordbøger tillader flere værdier, skal hver nøgle være unik inden for en ordbog. Hvis en nøgle gentages under tildelingen, vil den seneste værdi overskrive den forrige, hvilket sikrer, at hver nøgle kun har én tilsvarende værdi.

Eksempler

Lad os tage et kig på en simpel ordbog. I stedet for at bruge indeksnumre, får du adgang til ordbogselementer gennem deres nøgler, som i dette tilfælde er navnene på dagligvareartiklerne.

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øger i Python er fleksible, når det kommer til de typer data, 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.

På den anden side kan ordbogsværdier være af enhver type og kan inkludere foranderlige (mutable) typer, såsom lister eller andre ordbøger.

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

Ordbogsmetoder

Ordbøger tilbyder en række operationer og metoder, der letter effektiv datahåndtering. Her er nogle af de mest almindeligt anvendte metoder:

  • get() : henter værdien for en specificeret nøgle, og hvis nøglen ikke findes , returnerer den None . Dette er anderledes end at bruge firkantede parenteser (f.eks. grocery_items["Milk"] ), som ville give en fejl , hvis nøglen ikke eksisterer.;

  • update() : opdaterer ordbogen med elementer fra en anden ordbog eller en iterabel af nøgle-værdi par, overskriver eksisterende nøgler;

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

Bemærk

I Python er None en speciel værdi, der betyder "ingenting" eller "ingen værdi", og det bruges ofte, når du vil vise, at noget er tomt eller ikke har et resultat.

Eksempelapplikation

Forestil dig, at du skal opdatere ordbogen for et lager i din købmandsbutik. Her er, hvordan du kan gøre det ved hjælp af ordbogsmetoder:

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 købmandsforretnings lager ved hjælp af en ordbog, hvor hver vare er et nøgle-værdi par med varens navn og detaljer (produkt ID og kategori).

  • Definer en ordbog grocery_inventory til at gemme information:

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

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

  • Fjern varen "Eggs" fra ordbogen.

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