Novonaučeno programsko koncept lahko izboljša tvoje sposobnosti na povsem novo raven. Če si že seznanjen s For-zankami, je čas, da se ukvarjaš z enim od osrednjih gradnikov programiranja: While-zankami. V tem priročniku se boš naučil, kaj so While-zanke, kako delujejo in kako jih lahko učinkovito uporabiš v svojem Python-kodu.
Najpomembnejši vpogledi
- While-zanke ponavljajo izvajanje kode, dokler je izpolnjena določena pogoja.
- Ključno je, da se zanka prej ali slej ustavi, da se izogneš neskončnim zankam.
- S pomočjo break, continue in pass lahko nadzoruješ obnašanje While-zank.
Osnove While-zanke
While-zanka je ena od osnovnih vrst zank v Pythonu, ki ti omogoča, da ponavljaš izvajanje blok koda, dokler je pogoja izpolnjen. V nasprotju s For-zanko, While-zanka ne ponavlja izvajanja za določen število ponovitev, ampak tako dolgo, kot to zahteva logika tvojega programa.
Syntaksa While-zanke
V nadaljevanju ti bom podrobneje razložil strukturo While-zanke.

Najprej definiraš pogoje, ki se preverjajo. Če je pogoje True (resničen), se blok kode znotraj zanke izvede. Po vsakem teku se pogoje ponovno preveri.
Enostaven primer
Recimo, da želiš povečati vrednost spremenljivke x, dokler je ta manjša od 4.

Pri vsakem teku se x poveča in trenutna vrednost x se izpiše. To poteka tako dolgo, dokler pogoji ne velja več.
Konec zanke
Pomembno je, da se zanka prej ali slej ustavi in pogoji postanejo False. V nasprotnem primeru ustvariš neskončno zanko, ki lahko privede do zagona tvojega programa. Da se temu izogneš, poskrbi, da se spremenljivka, ki jo preverjaš, dejansko spremeni, tako da pogoji ne ostanejo vedno True.

Else-blok v While-zankah
Še en koristni vidik While-zank je uporaba else-bloka. Ta blok se izvede, ko se zanka konča in pogoji niso več izpolnjeni.

Ko izvedeš zgoraj navedeno kodo, se na koncu zanke izpiše sporočilo „Izhod je končan.“
Nadzor zank s pomočjo Break in Continue
V kompleksnejših programih je lahko potrebno dodatno nadzorovati obnašanje While-zank. Tukaj pridejo v poštev ukazi break, continue in pass.
Break
S pomočjo ukaza break lahko ročno prekineš zanko. Ko izpolniš določen pogoj, lahko zanko zapustiš predčasno.

V tem primeru se zanka prekine, ko x doseže vrednost 2, tako da se izpišejo le x = 0 in x = 1.
Continue
Ukaz continue pa preskoči trenutno iteracijo in se neposredno premakne na naslednjo.

V tem primeru se x = 2 ne izpiše, ker izvajanje preskoči na naslednjo iteracijo, takoj ko vrednost x doseže 2.
Pass
Ukaz pass se uporablja za ohranitev bloka ukazov praznega, brez izvajanja česarkoli. Koristen je, ko potrebuješ nadomestek in še nisi prepričan, kaj naj se tam izvede.

V tem primeru ima While-zanka pogoje, ki za x = 2 ne povzročajo nič, vendar ostaja koda kljub temu brez zapletov.
Povzetek – While-zanke v Pythonu: Priročnik za začetnike
V tem priročniku si se seznanil z osnovami While-zank v Pythonu. Sedaj veš, kako definirati While-zanko, kakšna je njena sintaksa in katere funkcije, kot so break, continue in pass, so na voljo za učinkovit nadzor zank. Ne pozabi, da moraš vedno poskrbeti, da se tvoja zanka nekako ustavi, da se izogneš neskončnim zankam.
Pogosto zastavljena vprašanja
Kako deluje While-zanka?While-zanka ponavlja izvajanje bloka kode, dokler je izpolnjen določen pogoj.
Kaj je razlika med break in continue?break popolnoma prekine zanko, medtem ko continue preskoči trenutno iteracijo in se premakne na naslednjo.
Kako se izognem neskončnim zankam v svoji kodi?Poskrbi, da pogoji While-zanke prej ali slej ne bodo več resnični, tako da ustrezno spremeniš preverjeno spremenljivko.
Ali uporaba pass škodi moji zanki?Ne, pass je nadomestek in ne vpliva na obnašanje tvoje zanke. Samo preprečuje sintaktične napake.
Kaj se zgodi, če pogoji While-zanke na začetku niso izpolnjeni?Če pogoji niso izpolnjeni pri prvem teku, se blok kode zanke nikoli ne izvede, vendar se lahko else-blok izvede, če je bil definiran.