Hur man använder en While Loop i Python

Hur man använder en While Loop i Python

Pythons while loop kan vara förvirrande för nybörjare. Men när du förstår begreppet looping inser du att 'medan' före Python 'loop' bara är ett villkor.





Låt oss ta en titt på Pythons medan loop och hur du kan använda den för att lösa programmeringsproblem.





Var kan du använda en While Loop?

Ett särskilt villkor följer a medan slinga. Det bestämmer vad som händer inom slingan. Medan det villkoret kvarstår Sann , uttrycken i slingan fortsätter att köras.





I allmänhet kommer looping att tänka på när du behöver arbeta igenom varje element i en lista eller en matris i programmering. A medan loop fortsätter också att köra tills ett uttalande i slingan stoppar det.

hur man hittar gpu windows 10

Relaterat: Hur gör-medan-loop fungerar i datorprogrammering



Ett bra exempel skulle vara en inspektionsverksamhet för att identifiera sjuka djur i en flock får. Du kan tillskriva detta till medan slinga genom att ställa in temperaturgränsen till 37 grader. Alla värden över detta betyder att ett får är sjukt.

För att göra detta uttalande i en medan loop, kan du säga: 'medan temperaturen på ett får är över 37 grader, skriv ut ohälsosamt.'





Som väntat, det medan uttalande skriver ut resultatet 'ohälsosamt' kontinuerligt så länge det inställda villkoret kvarstår Sann .

Hur man använder Python medan slingor- i praktiken

Som nämnts tidigare går en while -loop på obestämd tid om det inte finns några uppsatta villkor som stoppar den. Här är ett exempel på obestämd tid medan slinga:





while 3 <5:
print('It's less than 5')

Villkoret för medan loop i koden ovan är 3<5 .

Låt oss nu ta en titt på medan loop -kod för besättningsexempel från föregående avsnitt:

StdTemperature = 37
sheep_temp = 38
while sheep_temp > StdTemperature:
print('unhealthy')
else:
print('healthy')

I kodavsnittet ovan är temperaturgränsen 37. The får_temp variabel lagrar varje fårs temperatur. De medan loop fortsätter att ge 'ohälsosamt' så länge temperaturen är över 37; detta är villkoret för att köra slingan i det här fallet. Om du ändrar får_temp till ett värde mindre än 37, kör det annan påstående.

Men med hjälp av en medan loop för att lösa problemet ovan är för primitivt och oskalbart. Det beror på att du måste ändra värdet på får_temp variabel varje gång du behöver testa ett får. Det betyder att det är svårt att använda det på en array. Lösningen på det ligger utanför ramen för denna artikel.

Trots det bör det exemplet ge dig några insikter om vad en medan sats gör i en Python -slinga.

För att stoppa koden från att köras kontinuerligt kan du introducera en ha sönder uttalande i exempelkoden så här:

StdTemperature = 37
sheep_temp = 38
while sheep_temp > StdTemperature:
print('unhealthy')
break
else:
print('healthy')

Låt oss se ett annat användningsfall av a medan loop genom att skapa en lista med siffrorna mellan 1 och 10:

a = 11
b = 1
while b a -= 1
print(a)

Kodblocket ovan räknar från nummer 10 ner till 1. Du kan lika gärna tolka påståendet så här: 'medan en är mindre än elva, fortsätt att subtrahera en från ett tidigare nummer och ge resultatet som nästa räkning.' Det fungerar genom att ta bort en från ett tidigare nummer varje gång den kör medan instruktion.

Du kan också ändra medan loop ovanför för att multiplicera varje utmatning med 2:

a = 11
b = 1
while b a -= 1
print(a, 'x', '2', '=', a*2)

Du kan använda ett booleskt uttryck med en medan loop också. Ta en titt på kodavsnittet nedan för att se hur detta fungerar:

a = 10
b = 2
while b <10:
b+=1
print(b)
if b==8:
print(a)
break

Koden ovan ger en utmatning som räknar vartannat heltal från 3 till 10 utan att inkludera talet 9. ha sönder uttryck säkerställer att slingan slutar räkna när den når 10. För att förstå dess relevans kan du ta bort ha sönder uttalande för att se hur det går igenom.

Men istället för att använda en ha sönder , du kan använda Fortsätta uttryck för att få samma resultat. För att förstå hur det fungerar, försök att jämföra kodavsnittet ovan med det nedan:

a = 10
b = 2
while b <10:
b+=1
if b==9:
continue
print(b)

Istället för att styra utmatningen med en ha sönder , koden ovan instruerar ditt program att Fortsätta räkningen utan att överväga 9.

Du kan också ändra medan -slingan ovan för att mata ut alla jämna tal mellan 1 och 10:

a = 10
b = 1
while b <= 10:
b+=1
if b%2==0:
print(b)

Notera: Om du inte vill köra dessa exempel med Pythons inbyggda IDLE kan du använd Jupyter Notebook också, men du måste skapa och aktivera en virtuell Python -miljö att använda det alternativet.

Har en While Loop begränsningar i praktiken?

Även om det löser särskilda problem i verkliga händelser, a medan loop i Python har vissa begränsningar när det gäller en samling arrays.

I praktiken, till skillnad från för slinga, a medan loop erbjuder inte specificitet i ett kontrollflödesuttalande. Men en medan loop har också sina applikationer, så det är nödvändigt att ha koll på hur man använder det i dina program.

Dela med sig Dela med sig Tweet E-post Hur man skapar, importerar och återanvänder din egen modul i Python

Vi förklarar en viktig grund för återanvändning av kod i Python: moduler.

Läs Nästa
Relaterade ämnen
  • Programmering
  • Programmering
  • Pytonorm
Om författaren Idisou Omisola(94 artiklar publicerade)

Idowu brinner för allt smart teknik och produktivitet. På fritiden leker han med kodning och byter till schackbrädet när han har tråkigt, men han älskar också att bryta sig från rutinen då och då. Hans passion för att visa människor vägen kring modern teknik motiverar honom att skriva mer.

Mer från Idowu Omisola

Prenumerera på vårt nyhetsbrev

Gå med i vårt nyhetsbrev för tekniska tips, recensioner, gratis e -böcker och exklusiva erbjudanden!

Klicka här för att prenumerera