Python While Loop -opastus - Tee vaikka tosi esimerkkilause

Silmukat ovat sarja komentoja, jotka suoritetaan, kunnes ehto täyttyy. Katsotaanpa kuinka silmukat toimivat Pythonissa.

Mitä silmukat ovat?

Jos opit koodaamaan, silmukat ovat yksi tärkeimmistä käsitteistä, jotka sinun tulisi ymmärtää. Silmukat auttavat sinua suorittamaan ohjeiden sarjan, kunnes ehto täyttyy.

Pythonissa on kahta päätyyppistä silmukkaa.

  • Silmukoita varten
  • Vaikka silmukoita

Molempia tämän tyyppisiä silmukoita voidaan käyttää vastaaviin toimintoihin. Mutta kun opit kirjoittamaan tehokkaita ohjelmia, tiedät milloin mitä käyttää.

Tässä artikkelissa tarkastelemme Pythonin silmukoita. Saat lisätietoja silmukoista tutustumalla tähän artikkeliin, joka julkaistiin äskettäin freeCodeCampissa.

Vaikka silmukat

Käsite jonkin aikaa -silmukan takana on yksinkertainen: Vaikka ehto on totta -> Suorita komennot.

While-silmukka tarkistaa ehdon joka kerta, ja jos se palauttaa arvon "true", se suorittaa silmukan sisäiset ohjeet.

Ennen kuin aloitamme koodin kirjoittamisen, katsotaan vuokaaviosta nähdäksesi, miten se toimii.

Kirjoitetaan nyt koodi. Näin kirjoitat yksinkertaisen while-silmukan tulostaaksesi numeroita 1-10.

#!/usr/bin/python x = 1 while(x <= 10): print(x) x = x+1

Jos tarkastelet yllä olevaa koodia, silmukka suoritetaan vain, jos x on pienempi tai yhtä suuri kuin 10. Jos aloitat x: n arvoksi 20, silmukka ei koskaan toteudu.

Tässä on while-silmukan tulos:

> python script.py 1 2 3 4 5 6 7 8 9 10

Do-While Loop

While-silmukassa on kaksi muunnosta - while ja do-While. Ero näiden kahden välillä on se, että do-while toimii ainakin kerran.

Hetki-silmukka ei ehkä edes toteudu kerran, jos ehto ei täyty. Do-while toimii kuitenkin kerran, tarkista sitten seuraavien silmukoiden kunto.

Huolimatta siitä, että Pythonilla on läsnä useimmissa suosituissa ohjelmointikielissä, sillä ei ole natiivia Do-while-käskyä. Mutta voit helposti jäljitellä do-while -silmukkaa käyttämällä muita lähestymistapoja, kuten toimintoja.

Kokeillaan do-while-lähestymistapaa käärimällä komennot funktioon.

#!/usr/bin/python x = 20 def run_commands(): x = x+1 print(x) run_commands() while(x <= 10): run_commands()

Yllä oleva koodi suorittaa "run_commands ()" -funktion kerran ennen while-silmukan kutsumista. Kun while-silmukka alkaa, "run_commands" -toimintoa ei koskaan suoriteta, koska x on 20.

Vaikka - muu

Voit lisätä "else" -lausekkeen suoritettavaksi, jos silmukkaehto epäonnistuu.

Lisätään koodiin uusi ehto tulostaa "Valmis", kun olemme tulostaneet numerot 1-10.

#!/usr/bin/python x = 1 while(x <= 10): print(x) x = x+1 else: print("Done")

Yllä oleva koodi tulostaa ensin numerot 1: stä 10. Kun x on 11, kun taas ehto epäonnistuu, mikä laukaisee muun ehdon.

Yhden rivin lausunto

Jos while-silmukassasi on vain yksi koodirivi, voit käyttää yhden rivin syntaksia.

#!/usr/bin/python x = 1 while (x): print(x)

Äärettömät silmukat

Jos et ole varovainen kirjoittaessasi silmukoita, luot loputtomia silmukoita. Äärettömät silmukat ovat niitä, joissa ehto on aina totta.

#!/usr/bin/python x = 1 while (x >= 1): print(x)

Yllä oleva koodi on esimerkki äärettömästä silmukasta. Ei ole komentoa muuttaa x: n arvoa, joten ehto "x on suurempi tai yhtä suuri kuin 1" on aina totta. Tämä saa silmukan ajamaan ikuisesti.

Ole aina varovainen, kun kirjoitat silmukoita. Pieni virhe voi johtaa loputtomaan silmukkaan ja kaataa sovelluksesi.

Silmukan hallinta

Katsotaan lopuksi, kuinka hallita silmukan virtausta sen ollessa käynnissä.  

Kun kirjoitat tosielämän sovelluksia, kohtaat usein tilanteita, joissa sinun on lisättävä lisäehtoja silmukan ohittamiseksi tai silmukasta purkamiseksi.

Tauko

Katsotaanpa, kuinka murtautua silmukasta, kun ehto on totta.

#!/usr/bin/python x = 1 while (x <= 10): if(x == 5): break print(x) x += 1

Yllä olevassa koodissa silmukka lopettaa suorituksen, kun x on 5, huolimatta siitä, että x on suurempi tai yhtä suuri kuin 1.

Jatkaa

Tässä on toinen skenaario: sano, että haluat ohittaa silmukan, jos tietty ehto täyttyy. Haluat kuitenkin jatkaa seuraavia teloituksia, kunnes tärkein ehto muuttuu vääräksi.

Voit käyttää siihen jatko-avainsanaa seuraavasti:

#!/usr/bin/python x = 1 while (x <= 10): if(x == 5): x += 1 continue print(x)

Yllä olevassa esimerkissä silmukka tulostaa välillä 1-10, paitsi 5. Kun x on 5, loput komennot ohitetaan ja ohjausvirta palaa while-ohjelman alkuun.

Yhteenveto

Silmukat ovat yksi hyödyllisimmistä ohjelmoinnin komponenteista, joita käytät päivittäin.

Sillä ja kun ovat Pythonin kaksi pääsilmukkaa. While-silmukalla on kaksi muunnosta, while ja do-while, mutta Python tukee vain ensimmäistä.

Voit hallita ohjelmavirtaa tauko- ja jatkokomennoilla. Ole aina tietoinen loputtomien silmukoiden luomisesta vahingossa.

Kirjoitan säännöllisesti aiheista, kuten tekoäly ja kyberturvallisuus. Jos pidit tästä artikkelista, voit lukea blogini täältä.