Een While-lus gebruiken in Python

Een While-lus gebruiken in Python

De while-lus van Python kan verwarrend zijn voor beginners. Als u echter eenmaal het concept van looping begrijpt, zou u zich realiseren dat de 'while' voor de Python 'loop' slechts een voorwaarde is.





Laten we eens kijken naar Python's terwijl loop en hoe u deze kunt gebruiken om programmeerproblemen op te lossen.





Waar kun je een While-lus gebruiken?

Een bepaalde voorwaarde volgt een terwijl lus. Het bepaalt wat er binnen de lus gebeurt. Terwijl die toestand blijft Waar , blijven de expressies in de lus worden uitgevoerd.





Over het algemeen denk je aan looping wanneer je elk element van een lijst of een array in de programmering moet doorlopen. EEN terwijl lus blijft ook uitvoeren totdat een instructie binnen de lus het stopt.

gratis online programmeercursussen voor beginners

Gerelateerd: Hoe Do-While Loop werkt bij computerprogrammering



Een goed voorbeeld is een inspectieactiviteit om zieke dieren in een kudde schapen te identificeren. U kunt dit toeschrijven aan de terwijl lus door de temperatuurlimiet in te stellen op 37 graden. Elke waarde daarboven betekent dat een schaap ziek is.

Om deze verklaring in een terwijl loop, kun je zeggen: 'terwijl de temperatuur van een schaap boven de 37 graden is, print ongezond.'





Zoals verwacht, dat terwijl statement drukt het resultaat continu 'ongezond' af zolang de ingestelde voorwaarde blijft Waar .

Python While Loops gebruiken - in de praktijk

Zoals eerder vermeld, loopt een while-lus voor onbepaalde tijd als er geen vaste voorwaarden zijn die deze stoppen. Hier is een voorbeeld van een onbepaalde terwijl lus:





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

De voorwaarde voor de terwijl lus in de bovenstaande code is 3<5 .

Laten we nu eens kijken naar de terwijl luscode voor het kudde-inspectievoorbeeld uit de vorige sectie:

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

In het bovenstaande codefragment is de temperatuurlimiet 37. De sheep_temp variabele slaat de temperatuur van elk schaap op. De terwijl lus blijft 'ongezond' produceren zolang de temperatuur boven de 37 is; dit is de voorwaarde voor het uitvoeren van de lus in dit geval. Als je verandert sheep_temp tot een waarde kleiner dan 37, voert het de uit anders uitspraak.

Echter, met behulp van een terwijl loop om het bovenstaande probleem op te lossen is te primitief en niet schaalbaar. Dat komt omdat u de waarde van de . handmatig moet wijzigen sheep_temp variabele elke keer dat u een schaap moet testen. Het betekent dat het moeilijk is om het op een array te gebruiken. De oplossing daarvoor valt buiten het bestek van dit artikel.

Desalniettemin zou dat voorbeeld u enig inzicht moeten geven over wat een terwijl statement doet in een Python-lus.

Om te voorkomen dat de code continu wordt uitgevoerd, kunt u een pauze statement in de voorbeeldcode als volgt:

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

Laten we eens kijken naar een ander gebruiksvoorbeeld van a terwijl loop door een lijst te maken van de getallen tussen 1 en 10:

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

Het bovenstaande codeblok telt vanaf nummer 10 tot 1. Je kunt de uitspraak net zo goed als volgt interpreteren: 'terwijl één minder is dan elf, blijf één van elk vorig nummer aftrekken en geef het resultaat als de volgende telling.' Het werkt door een van een vorig nummer te verwijderen elke keer dat het de . uitvoert terwijl instructie.

U kunt ook de terwijl lus hierboven om elke output met 2 te vermenigvuldigen:

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

U kunt een Booleaanse uitdrukking gebruiken met a terwijl lus ook. Bekijk het onderstaande codefragment om te zien hoe dit werkt:

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

De bovenstaande code geeft een uitvoer die elk ander geheel getal telt van 3 tot en met 10 zonder het getal 9 op te nemen. De pauze expressie zorgt ervoor dat de lus stopt met tellen zodra deze bij 10 komt. Om de relevantie ervan te begrijpen, kunt u de . verwijderen pauze verklaring om te zien hoe het overkomt.

Echter, in plaats van het gebruik van a pauze , kunt u de doorgaan met uitdrukking om hetzelfde resultaat te krijgen. Om te begrijpen hoe dat werkt, kunt u het bovenstaande codefragment vergelijken met het onderstaande:

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

In plaats van de uitgang te regelen met a pauze , de bovenstaande code instrueert uw programma om doorgaan met de telling zonder rekening te houden met 9.

Je kunt ook de while-lus hierboven wijzigen om alle even getallen tussen 1 en 10 uit te voeren:

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

Opmerking: Als u deze voorbeelden niet wilt uitvoeren met de ingebouwde IDLE van Python, kunt u: gebruik Jupyter Notebook ook, maar je moet een virtuele Python-omgeving maken en activeren om die optie te gebruiken.

Heeft een While-lus in de praktijk beperkingen?

Hoewel het bepaalde problemen in echte gebeurtenissen oplost, terwijl loop in Python heeft enkele beperkingen bij het omgaan met een verzameling arrays.

In de praktijk, in tegenstelling tot voor lus, een terwijl loop biedt geen specificiteit in een controlestroominstructie. Echter, een terwijl loop heeft ook zijn toepassingen, dus het is noodzakelijk om te begrijpen hoe u het in uw programma's kunt gebruiken.

Deel Deel Tweeten E-mail Hoe u uw eigen module in Python kunt maken, importeren en hergebruiken?

We leggen een belangrijke basis uit van herbruikbaarheid van code in Python: modules.

Lees volgende
Gerelateerde onderwerpen
  • Programmeren
  • Programmeren
  • Python
Over de auteur Idisou Omisola(94 artikelen gepubliceerd)

Idowu is gepassioneerd door alles wat slimme technologie en productiviteit betreft. In zijn vrije tijd speelt hij met coderen en schakelt hij over naar het schaakbord als hij zich verveelt, maar hij vindt het ook heerlijk om af en toe uit de routine te stappen. Zijn passie om mensen de weg te wijzen in moderne technologie motiveert hem om meer te schrijven.

Meer van Idowu Omisola

Abonneer op onze nieuwsbrief

Word lid van onze nieuwsbrief voor technische tips, recensies, gratis e-boeken en exclusieve deals!

Klik hier om je te abonneren