Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Uendelig Løkke | For-Løkken
Python Løkker Veiledning

bookUendelig Løkke

En uendelig løkke er en løkke som aldri avsluttes fordi betingelsen som styrer den aldri evalueres til False. Slike løkker kan føre til at et program henger eller krasjer, og bør unngås med mindre det er uttrykkelig ønsket.

Hvis en betingelse alltid er True, vil løkken kjøre for alltid. For eksempel, la oss bruke et reiserelatert scenario:

# Infinite loop example
while 'Barcelona' in ['Monako', 'Liverpool', 'Barcelona', 'Munchen']:
    print('I found Barcelona!')
  • Betingelsen 'Barcelona' in [...] vil alltid være True fordi 'Barcelona' finnes i listen. Dette tilsvarer while True:;
  • Løkken skriver kontinuerlig ut 'I found Barcelona!' uten noen måte å stoppe på.

En feilaktig oppdatert løkkevariabel kan også føre til en uendelig løkke. For eksempel:

# Another infinite loop example
i = 0
travel_list = ['Monako', 'Luxemburg', 'Liverpool', 'Barcelona', 'Munchen']

while i < len(travel_list):
    print(travel_list[i])
    # Missing increment: i += 1
  • Indeksen i blir aldri økt, så betingelsen i < len(travel_list) er alltid True;
  • Løkken fortsetter å skrive ut den første byen ('Monako') uendelig.

For å unngå uendelige løkker må du sørge for at løkkebetingelsen til slutt evalueres til False. Dette betyr at betingelsen må være dynamisk og endres under utførelsen av løkken. Dersom du bruker en variabel (for eksempel en teller) for å kontrollere løkken, må du også sørge for at denne blir inkrementert eller oppdatert korrekt inne i løkken, slik at betingelsen ikke forblir True uendelig.

1. Hva er problemet med følgende kode?

2. Hvordan kan du endre denne løkken for å forhindre at den kjører uendelig?

question mark

Hva er problemet med følgende kode?

Select all correct answers

question mark

Hvordan kan du endre denne løkken for å forhindre at den kjører uendelig?

Select the correct answer

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 1. Kapittel 8

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

bookUendelig Løkke

Sveip for å vise menyen

En uendelig løkke er en løkke som aldri avsluttes fordi betingelsen som styrer den aldri evalueres til False. Slike løkker kan føre til at et program henger eller krasjer, og bør unngås med mindre det er uttrykkelig ønsket.

Hvis en betingelse alltid er True, vil løkken kjøre for alltid. For eksempel, la oss bruke et reiserelatert scenario:

# Infinite loop example
while 'Barcelona' in ['Monako', 'Liverpool', 'Barcelona', 'Munchen']:
    print('I found Barcelona!')
  • Betingelsen 'Barcelona' in [...] vil alltid være True fordi 'Barcelona' finnes i listen. Dette tilsvarer while True:;
  • Løkken skriver kontinuerlig ut 'I found Barcelona!' uten noen måte å stoppe på.

En feilaktig oppdatert løkkevariabel kan også føre til en uendelig løkke. For eksempel:

# Another infinite loop example
i = 0
travel_list = ['Monako', 'Luxemburg', 'Liverpool', 'Barcelona', 'Munchen']

while i < len(travel_list):
    print(travel_list[i])
    # Missing increment: i += 1
  • Indeksen i blir aldri økt, så betingelsen i < len(travel_list) er alltid True;
  • Løkken fortsetter å skrive ut den første byen ('Monako') uendelig.

For å unngå uendelige løkker må du sørge for at løkkebetingelsen til slutt evalueres til False. Dette betyr at betingelsen må være dynamisk og endres under utførelsen av løkken. Dersom du bruker en variabel (for eksempel en teller) for å kontrollere løkken, må du også sørge for at denne blir inkrementert eller oppdatert korrekt inne i løkken, slik at betingelsen ikke forblir True uendelig.

1. Hva er problemet med følgende kode?

2. Hvordan kan du endre denne løkken for å forhindre at den kjører uendelig?

question mark

Hva er problemet med følgende kode?

Select all correct answers

question mark

Hvordan kan du endre denne løkken for å forhindre at den kjører uendelig?

Select the correct answer

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 1. Kapittel 8
some-alt