For-Løkker med Forskellige Strukturer
Lad os undersøge brugen af for-løkker med forskellige datastrukturer.
for-løkker i Python kan anvendes med enhver itererbar objekt (lists, tuples, dictionaries, strings), hvilket muliggør datamanipulation for hvert enkelt element.
Uanset om der skal tilgås elementer i en liste, nøgler eller værdier i en ordbog, eller tegn i en streng, giver for-løkker en klar syntaks, der forenkler koden ved gentagne opgaver.
Her ses, hvordan en for-løkke kan bruges til at iterere over elementerne i en streng og en tuple, på samme måde som vi så med lister:
123456789# Print each letter in the string vegetable = "Carrot" for letter in vegetable: print(letter) # Tuple containing different categories of the grocery store categories = ("Produce", "Bakery", "Meat", "Dairy") for category in categories: print(category)
I eksemplet ovenfor gennemløbes hvert bogstav i strengen og hvert element i tuplen, hvor de udskrives ét ad gangen. Dette illustrerer, hvordan for-løkker kan behandle hvert element i forskellige typer sekvenser, hvilket gør koden både effektiv og letlæselig.
Ved brug af et for-loop med et dictionary, vil iteration direkte over dictionary som standard gennemløbe dets nøgler.
Her er hvad du kan forvente, når du itererer direkte over et dictionary:
1234567# Dictionary of products and their stock counts productStock = {"milk": 120, "eggs": 200, "bread": 80} # Print each dictionary key print("Product list:") for product in productStock: print(product)
Bemærk, at iteratorvariablen product kun tilgår dictionary-nøglerne.
For at iterere over værdierne i et dictionary kan du bruge metoden values().
Dette er nyttigt til operationer, hvor der kun er behov for adgang til værdierne uden at referere til nøglerne:
1234567# Dictionary of products and their stock counts productStock = {"milk": 120, "eggs": 200, "bread": 80} # Print each dictionary value print("Stock counts:") for stock in productStock.values(): print(stock)
Hvis det er nødvendigt at tilgå nøgler og værdier samtidigt, gør items()-metoden det muligt at iterere gennem nøgle-værdi-par i et dictionary.
For at anvende denne metode i et for-loop angives to variabler før in-nøgleordet — én for nøglen (product) og én for værdien (stock):
1234567# Dictionary of products and their stock counts productStock = {"milk": 120, "eggs": 200, "bread": 80} # Print both the key and value for each dictionary item print("Inventory details:") for product, stock in productStock.items(): print(f"{product} has {stock} units in stock.")
I dette eksempel anvender vi f-strenge (også kendt som formaterede streng-litteraler) til at indsætte variable direkte i strenge. Syntaksen er enkel: tilføj et f før det indledende anførselstegn ", og placer variable eller udtryk i krøllede parenteser {} inde i strengen. Denne metode gør det langt mere læsbart at kombinere strenge og variable i print-udsagn, så det er værd at lære.
Med udgangspunkt i din viden om if/else, booleske operatorer og for-løkker kan vi udføre et simpelt lagercheck på et dictionary:
123456789101112131415161718# Product names as keys and their stock levels as values inventory = { "milk": 120, "eggs": 30, "bread": 80, "apples": 10 } # The threshold stock level that triggers a restock minimum_stock = 50 # Evaluating stock levels and deciding if restocking is necessary print("Checking inventory status:") for product, quantity in inventory.items(): if quantity < minimum_stock: print(f"{product} requires restocking. Only {quantity} units remain.") else: print(f"{product} has adequate stock with {quantity} units available.")
Du bemærker måske, at vi har placeret if-udsagn inde i for-løkken, hvilket har tilføjet ekstra indrykning til if-blokken. Som nævnt tidligere kan hvert indrykket kodeblok behandles som uafhængig, uanset hvor den er placeret. Det vigtigste er at sikre, at indrykningen er ensartet og korrekt imellem dem.
Swipe to start coding
Gennemløb et ordbog med dagligvarer og deres priser. For hver vare:
- Brug en for-løkke til at iterere gennem
grocery-ordbogen; - Udskriv både varen (nøglen) og dens pris (værdien) inde i løkken.
Løsning
Tak for dine kommentarer!
single
Spørg AI
Spørg AI
Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat
Fantastisk!
Completion rate forbedret til 1.89
For-Løkker med Forskellige Strukturer
Stryg for at vise menuen
Lad os undersøge brugen af for-løkker med forskellige datastrukturer.
for-løkker i Python kan anvendes med enhver itererbar objekt (lists, tuples, dictionaries, strings), hvilket muliggør datamanipulation for hvert enkelt element.
Uanset om der skal tilgås elementer i en liste, nøgler eller værdier i en ordbog, eller tegn i en streng, giver for-løkker en klar syntaks, der forenkler koden ved gentagne opgaver.
Her ses, hvordan en for-løkke kan bruges til at iterere over elementerne i en streng og en tuple, på samme måde som vi så med lister:
123456789# Print each letter in the string vegetable = "Carrot" for letter in vegetable: print(letter) # Tuple containing different categories of the grocery store categories = ("Produce", "Bakery", "Meat", "Dairy") for category in categories: print(category)
I eksemplet ovenfor gennemløbes hvert bogstav i strengen og hvert element i tuplen, hvor de udskrives ét ad gangen. Dette illustrerer, hvordan for-løkker kan behandle hvert element i forskellige typer sekvenser, hvilket gør koden både effektiv og letlæselig.
Ved brug af et for-loop med et dictionary, vil iteration direkte over dictionary som standard gennemløbe dets nøgler.
Her er hvad du kan forvente, når du itererer direkte over et dictionary:
1234567# Dictionary of products and their stock counts productStock = {"milk": 120, "eggs": 200, "bread": 80} # Print each dictionary key print("Product list:") for product in productStock: print(product)
Bemærk, at iteratorvariablen product kun tilgår dictionary-nøglerne.
For at iterere over værdierne i et dictionary kan du bruge metoden values().
Dette er nyttigt til operationer, hvor der kun er behov for adgang til værdierne uden at referere til nøglerne:
1234567# Dictionary of products and their stock counts productStock = {"milk": 120, "eggs": 200, "bread": 80} # Print each dictionary value print("Stock counts:") for stock in productStock.values(): print(stock)
Hvis det er nødvendigt at tilgå nøgler og værdier samtidigt, gør items()-metoden det muligt at iterere gennem nøgle-værdi-par i et dictionary.
For at anvende denne metode i et for-loop angives to variabler før in-nøgleordet — én for nøglen (product) og én for værdien (stock):
1234567# Dictionary of products and their stock counts productStock = {"milk": 120, "eggs": 200, "bread": 80} # Print both the key and value for each dictionary item print("Inventory details:") for product, stock in productStock.items(): print(f"{product} has {stock} units in stock.")
I dette eksempel anvender vi f-strenge (også kendt som formaterede streng-litteraler) til at indsætte variable direkte i strenge. Syntaksen er enkel: tilføj et f før det indledende anførselstegn ", og placer variable eller udtryk i krøllede parenteser {} inde i strengen. Denne metode gør det langt mere læsbart at kombinere strenge og variable i print-udsagn, så det er værd at lære.
Med udgangspunkt i din viden om if/else, booleske operatorer og for-løkker kan vi udføre et simpelt lagercheck på et dictionary:
123456789101112131415161718# Product names as keys and their stock levels as values inventory = { "milk": 120, "eggs": 30, "bread": 80, "apples": 10 } # The threshold stock level that triggers a restock minimum_stock = 50 # Evaluating stock levels and deciding if restocking is necessary print("Checking inventory status:") for product, quantity in inventory.items(): if quantity < minimum_stock: print(f"{product} requires restocking. Only {quantity} units remain.") else: print(f"{product} has adequate stock with {quantity} units available.")
Du bemærker måske, at vi har placeret if-udsagn inde i for-løkken, hvilket har tilføjet ekstra indrykning til if-blokken. Som nævnt tidligere kan hvert indrykket kodeblok behandles som uafhængig, uanset hvor den er placeret. Det vigtigste er at sikre, at indrykningen er ensartet og korrekt imellem dem.
Swipe to start coding
Gennemløb et ordbog med dagligvarer og deres priser. For hver vare:
- Brug en for-løkke til at iterere gennem
grocery-ordbogen; - Udskriv både varen (nøglen) og dens pris (værdien) inde i løkken.
Løsning
Tak for dine kommentarer!
single