Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære If/else i en nøstet løkke | For-Løkken
Python Løkker Veiledning

bookIf/else i en nøstet løkke

if/else-setninger er avgjørende for å legge til betingelser i nøstede løkker. De gjør det mulig å filtrere, behandle eller kategorisere data, for eksempel å identifisere spesifikke verdier i lister eller matriser.

La oss tilpasse dette konseptet til en praktisk oppgave: filtrering av reiseutgifter. Hvis en utgift overstiger en viss budsjettgrense, markerer vi den som "Expensive"; ellers skrives den opprinnelige utgiften ut.

Anta at du har en liste med reiser, og hver reise inneholder utgifter for kategorier som fly, hotell, mat og aktiviteter. Målet ditt er å sjekke hver utgift:

  • Hvis utgiften overstiger $200, marker den som Expensive;
  • Ellers skriv ut den opprinnelige utgiften.
1234567891011121314151617181920212223
# Travel expenses for multiple trips travel_costs = [ [500, 150, 100, 50], # Trip 1 [200, 300, 120, 80], # Trip 2 [180, 220, 130, 170] # Trip 3 ] # Setting outer while loop to work with rows (trips) i = 0 while i < len(travel_costs): j = 0 print(f"Trip {i + 1} expenses: ", end='') # Label for the current trip # Setting inner while loop to work with expenses in the current trip while j < len(travel_costs[i]): if travel_costs[i][j] > 200: # Check if expense is greater than 200 print('Expensive', end=' ') else: print(travel_costs[i][j], end=' ') j += 1 # Move to the next expense print('') # Move to the next line after each trip i += 1 # Move to the next trip
copy
  • Ytre while-løkke itererer gjennom hver reise i listen travel_costs ved hjelp av indeksen i;
  • Indre while-løkke går gjennom utgiftene for den aktuelle reisen ved hjelp av indeksen j;
  • if/else-betingelsen sjekker om en utgift er større enn $200;
  • Etter å ha behandlet alle utgiftene for en reise, går programmet til neste linje og fortsetter til neste reise.
Oppgave

Swipe to start coding

Du får en liste over reiseutgifter for flere turer. Hver tur er representert som en nøstet liste som inneholder ulike utgifter som transport, overnatting, mat og aktiviteter. Oppgaven din er å behandle disse utgiftene ved å identifisere "billige" kostnader, samtidig som du beholder samme nøstede struktur.

  • Du får en todimensjonal liste (liste av lister), der hver indre liste representerer utgiftene for én tur.
  • Iterer gjennom hver turs utgiftsliste.
  • Bytt ut alle utgifter på $100 eller mindre med "Cheap", og la andre verdier være uendret.
  • Lagre de omformede utgiftene i en ny todimensjonal liste med samme struktur.

Løsning

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 1. Kapittel 15
single

single

Spør AI

expand

Spør AI

ChatGPT

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

close

bookIf/else i en nøstet løkke

Sveip for å vise menyen

if/else-setninger er avgjørende for å legge til betingelser i nøstede løkker. De gjør det mulig å filtrere, behandle eller kategorisere data, for eksempel å identifisere spesifikke verdier i lister eller matriser.

La oss tilpasse dette konseptet til en praktisk oppgave: filtrering av reiseutgifter. Hvis en utgift overstiger en viss budsjettgrense, markerer vi den som "Expensive"; ellers skrives den opprinnelige utgiften ut.

Anta at du har en liste med reiser, og hver reise inneholder utgifter for kategorier som fly, hotell, mat og aktiviteter. Målet ditt er å sjekke hver utgift:

  • Hvis utgiften overstiger $200, marker den som Expensive;
  • Ellers skriv ut den opprinnelige utgiften.
1234567891011121314151617181920212223
# Travel expenses for multiple trips travel_costs = [ [500, 150, 100, 50], # Trip 1 [200, 300, 120, 80], # Trip 2 [180, 220, 130, 170] # Trip 3 ] # Setting outer while loop to work with rows (trips) i = 0 while i < len(travel_costs): j = 0 print(f"Trip {i + 1} expenses: ", end='') # Label for the current trip # Setting inner while loop to work with expenses in the current trip while j < len(travel_costs[i]): if travel_costs[i][j] > 200: # Check if expense is greater than 200 print('Expensive', end=' ') else: print(travel_costs[i][j], end=' ') j += 1 # Move to the next expense print('') # Move to the next line after each trip i += 1 # Move to the next trip
copy
  • Ytre while-løkke itererer gjennom hver reise i listen travel_costs ved hjelp av indeksen i;
  • Indre while-løkke går gjennom utgiftene for den aktuelle reisen ved hjelp av indeksen j;
  • if/else-betingelsen sjekker om en utgift er større enn $200;
  • Etter å ha behandlet alle utgiftene for en reise, går programmet til neste linje og fortsetter til neste reise.
Oppgave

Swipe to start coding

Du får en liste over reiseutgifter for flere turer. Hver tur er representert som en nøstet liste som inneholder ulike utgifter som transport, overnatting, mat og aktiviteter. Oppgaven din er å behandle disse utgiftene ved å identifisere "billige" kostnader, samtidig som du beholder samme nøstede struktur.

  • Du får en todimensjonal liste (liste av lister), der hver indre liste representerer utgiftene for én tur.
  • Iterer gjennom hver turs utgiftsliste.
  • Bytt ut alle utgifter på $100 eller mindre med "Cheap", og la andre verdier være uendret.
  • Lagre de omformede utgiftene i en ny todimensjonal liste med samme struktur.

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 1. Kapittel 15
single

single

some-alt