...
Kurser Alla kurser Min sida Min sida Provbank Mina prov Min skola Läromedel Blogg Guider Om oss Kontakt Nationella prov Gamla högskoleprov Läxhjälp matematik Priser
Sök Mitt konto Logga ut Elev/lärare
-registrering
Logga in Köp Premium Köp Premium Prova gratis
Genom att använda den här sidan godkänner du våra användarvillkor, vår integritetspolicy och att vi använder cookies.
EXEMPEL I VIDEON
Lägg till som läxa
Lägg till som stjärnmärkt
  Lektionsrapport   Hjälp

Frågor hjälpmarkerade!

Alla markeringar försvinner.

Ta bort markeringar Avbryt
Kopiera länk Facebook Twitter Repetera Rapportera Ändra status
KURSER  / 
Matematik och Programmering
 /   Loopar – Python

While loop i python

Endast Premium- användare kan rösta.
Författare:Simon Rybrand
Rapportera fel Redigera lektion Redigera text Redigera övning Redigera video
Så hjälper Eddler dig:
Videor som är lätta att förstå Övningar & prov med förklaringar
Allt du behöver för att klara av nationella provet
Så hjälper Eddler dig:
Videor som är lätta att förstå Övningar & prov med förklaringar
Allt du behöver för att klara av nationella provet
Din skolas prenumeration har gått ut!
Påminn din lärare om att förnya eller fortsätt plugga med Eddler på egen hand.
Så funkar det för:
Elever/Studenter Lärare Föräldrar
Din skolas prenumeration har gått ut!
Förnya er prenumeration. Kontakta oss på: info@eddler.se

Här lär du dig hur man skriver en while loop i programmeringsspråket python. Vi visar först teorin och tar sedan ett praktiskt exempel.

Python har två olika sätt att skriva loopar på. Det ena kalls för for loop och det andra är while loopen. På svenska kan vi översätta while till medan. Du kan tänka att koden utför något medan ett villkor stämmer.

Övning

Du hittar frågeställningarna som kommentarer precis här nedanför (Texten efter kommentaren # och numret på frågan). Förslag på lösning hittar du i filen suggestion.py.

På samma sätt som en for loop så används en while loop för att göra saker om och om igen tills vi säger till den att avbryta.

Så skriver du en while loop i python

En while loop kan beskrivas med text på följande vis:

counter = 0
while villkor:
  Kodblocket som körs i loopen…
  Öka på counter (räknaren ett steg)

Här gäller att villkoret körs innan varje kodblock och på det viset kan vi kolla om vi skall fortsätta eller avbryta while loopen i varje omgång.

Ett riktigt exempel på en while loop kan se ut på följande vis

counter = 0
while counter < 10:
  print(counter)
  counter += 1

Här har vi en while loop där villkoret är att vi skall köra loopen så länge som counter är mindre än 10. Om det här skall fungera så måste först innan loopen definiera variabeln counter = 0.

Vi behöver även öka på counter ett eller flera steg varje gång vi kör loopen så här behöver vi skriva counter += i slutet på varje kodblock. Då kommer counter att ökas på med 1 varje gång vi har kört klart en omgång. Om vi inte ökar på counter kommer loopen att fortsätta i all oändlighet och programmet kommer att låsa sig.

Vi har villkoret att vi skall köra så länge counter är mindre än 10 och när counter = 10 så kommer while loopen att avslutas.

Break och else i while loopen

Du kan också avbryta loopen (break), fortsätta (continue) och lägga in ett villkor (else). Nedan visas tre exempel på detta.

Break

Du kan avbryt loopen i förtid om du exempelvis har uppnått det du önskar.

i = 0
while i < 10:
  print(i)
  if i == 8:
    break
  i+=1

Här ovan används en if sats och vi avbryter vi loopen om i är lika med 8.

Else

Du kan också använda else tillsammans med en while loop i python.

i = 0
while i < 4:
  print(i)
  i+=1
else:
  print("loopen är klar")

När villkoret i < 4 inte stämmer längre i loopen här ovan så går den in in i else. Då skriver vi ut att den är avslutad.

Kommentarer

Ma Br

Finns det verkligen bara en övning per genomgång? Jag hittar inte hur jag ska stega fram till de andra övningarna om det finns fler.

    Simon Rybrand (Moderator)

    Hej
    Just nu ligger det en övning per genomgång. Det är möjligt att vi i framtiden kommer att utöka detta.

Janet Monteza

i = 0
while i < 10:
print(i)
if i == 8:
break
i+=1
Här ovan används en if sats och vi avbryter vi loopen om i är lika med "1".
Skulle inte stå 8 istället för 1 eller?

    Simon Rybrand (Moderator)

    Ja det skall stå 8, det är korrigerat, tack för att du sade till!


Endast Premium-användare kan kommentera.