Uendelig Løkke
En uendelig løkke er en løkke, der aldrig afsluttes, fordi betingelsen, der styrer den, aldrig evalueres til False
. Disse løkker kan få et program til at hænge eller gå ned, så de bør undgås, medmindre det er eksplicit tilsigtet.
Hvis en betingelse altid er True
, vil løkken køre for evigt. For eksempel, lad os bruge et rejserelateret scenarie:
python
- Betingelsen
'Barcelona' in [...]
vil altid væreTrue
, fordi'Barcelona'
er til stede i listen. Det svarer tilwhile True:
; - Løkken udskriver kontinuerligt
'I found Barcelona!'
uden nogen måde at stoppe på.
En forkert opdateret løkkevariabel kan også føre til en uendelig løkke. For eksempel:
python
- Indekset
i
bliver aldrig forøget, så betingelseni < len(travel_list)
er altidTrue
; - Løkken bliver ved med at udskrive den første by (
'Monako'
) uendeligt.
For at undgå uendelige loops, skal du sikre, at loop-betingelsen er designet til til sidst at evaluere til False
. Dette betyder, at betingelsen skal være dynamisk og ændre sig under udførelsen af loopet. Derudover, hvis du bruger en variabel (såsom en tæller) til at kontrollere loopet, skal du sørge for, at den bliver inkrementeret eller opdateret korrekt inden for loopet for at forhindre, at betingelsen forbliver True
på ubestemt tid.
1. What is the issue with the following code?
2. How can you modify this loop to prevent it from running forever?
Tak for dine kommentarer!