Hvordan bruke en While Loop i Python

Hvordan bruke en While Loop i Python

Pythons mens loop kan være forvirrende for nybegynnere. Men når du forstår begrepet looping, innser du at 'while' før Python 'loop' bare er en tilstandserklæring.





La oss ta en titt på Pythons samtidig som loop og hvordan du kan bruke den til å løse programmeringsproblemer.





Hvor kan du bruke en While Loop?

En spesiell betingelse følger a samtidig som Løkke. Det bestemmer hva som skjer i løkken. Mens den tilstanden fortsatt er ekte , uttrykkene i sløyfen fortsetter å kjøre.





Vanligvis tenker looping når du trenger å jobbe gjennom hvert element i en liste eller en matrise i programmering. EN samtidig som loop fortsetter også å kjøre til en setning i sløyfen stopper den.

Fem generasjons slektstre mal excel

Relatert: Hvordan gjør-mens-sløyfe fungerer i dataprogrammering



Et godt eksempel ville være en inspeksjonsaktivitet for å identifisere syke dyr i en saueflokk. Du kan tilskrive dette til samtidig som sløyfe ved å sette temperaturgrensen til 37 grader. Enhver verdi over dette betyr at en sau er syk.

For å komme med denne uttalelsen i en samtidig som loop, kan du si: 'mens temperaturen på et sau er over 37 grader, må du skrive ut usunt.'





Som forventet, det samtidig som setning skriver ut resultatet 'usunt' kontinuerlig så lenge den angitte tilstanden forblir ekte .

Hvordan bruke Python mens sløyfer- i praksis

Som nevnt tidligere, kjører en stund -sløyfe på ubestemt tid hvis det ikke er noen betingelser som stopper den. Her er et eksempel på ubestemt tid samtidig som Løkke:





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

Tilstanden for samtidig som loop i koden ovenfor er 3<5 .

La oss nå se på samtidig som sløyfekode for besetningseksempeleksemplet fra forrige seksjon:

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

I kodebiten ovenfor er temperaturgrensen 37. The sauer_temp variabel lagrer temperaturen på hver sau. De samtidig som loop fortsetter å sende ut 'usunn' så lenge temperaturen er over 37; dette er betingelsen for å utføre løkken i dette tilfellet. Hvis du endrer sauer_temp til en verdi mindre enn 37, utfører den ellers uttalelse.

Imidlertid bruker du en samtidig som loop for å løse problemet ovenfor er for primitiv og ikke skalerbar. Det er fordi du må endre verdien manuelt på sauer_temp variabel hver gang du må teste et sau. Det betyr at det er vanskelig å bruke det på en matrise. Løsningen på det ligger utenfor omfanget av denne artikkelen.

Til tross for dette bør dette eksemplet gi deg noen innsikt i hva en samtidig som setning gjør i en Python -sløyfe.

For å stoppe koden fra å kjøre kontinuerlig, kan du introdusere en gå i stykker setning i eksempelkoden slik:

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

La oss se et annet brukstilfelle av a samtidig som loop ved å lage en liste over tallene mellom 1 og 10:

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

Kodeblokken ovenfor teller fra nummer 10 ned til 1. Du kan like godt tolke utsagnet slik: 'mens en er mindre enn elleve, fortsett å trekke en fra et hvilket som helst tidligere tall og gi resultatet som neste telling.' Det fungerer ved å fjerne en fra et tidligere nummer hver gang den utfører samtidig som instruksjon.

Du kan også endre samtidig som løkke over for å multiplisere hver utgang med 2:

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

Du kan bruke et boolsk uttrykk med en samtidig som loop også. Ta en titt på kodebiten nedenfor for å se hvordan dette fungerer:

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

Koden ovenfor gir en utgang som teller hvert annet heltall fra 3 til 10 uten å inkludere tallet 9. gå i stykker uttrykket sørger for at sløyfen slutter å telle når den når til 10. For å forstå relevansen, kan du fjerne gå i stykker uttalelse for å se hvordan det kommer gjennom.

Imidlertid, i stedet for å bruke en gå i stykker , kan du bruke Fortsette uttrykk for å få det samme resultatet. For å forstå hvordan det fungerer, prøv å sammenligne kodebiten ovenfor med den nedenfor:

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

I stedet for å kontrollere utgangen med en gå i stykker , koden ovenfor instruerer programmet ditt til Fortsette tellingen uten å vurdere 9.

Du kan også endre mens -sløyfen ovenfor for å sende alle partall mellom 1 og 10:

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

Merk: Hvis du ikke vil kjøre disse eksemplene med Pythons innebygde IDLE, kan du bruk Jupyter Notebook også, men du må opprette og aktivere et virtuelt Python -miljø å bruke det alternativet.

Har en While Loop begrensninger i praksis?

Selv om det løser spesielle problemer i virkelige hendelser, a samtidig som loop i Python har noen begrensninger når det gjelder en samling matriser.

I praksis, i motsetning til til sløyfe, a samtidig som loop gir ikke spesifisitet i en kontrollflyt -setning. Imidlertid er a samtidig som loop har også sine applikasjoner, så det er nødvendig å ha oversikt over hvordan du bruker det i programmene dine.

Dele Dele kvitring E -post Hvordan lage, importere og gjenbruke din egen modul i Python

Vi forklarer et viktig grunnlag for gjenbruk av kode i Python: moduler.

Les neste
Relaterte temaer
  • Programmering
  • Programmering
  • Python
Om forfatteren Idisou Omisola(94 artikler publisert)

Idowu brenner for alt smart teknologi og produktivitet. På fritiden leker han med koding og bytter til sjakkbrettet når han kjeder seg, men han liker også å bryte fra rutinen en gang i blant. Hans lidenskap for å vise folk veien rundt moderne teknologi motiverer ham til å skrive mer.

Mer fra Idowu Omisola

Abonner på vårt nyhetsbrev

Bli med i vårt nyhetsbrev for tekniske tips, anmeldelser, gratis ebøker og eksklusive tilbud!

Klikk her for å abonnere