Egy újonnan tanult programozási koncepció a képességeidet egy teljesen új szintre emelheti. Ha már ismered a for ciklusokat, itt az ideje, hogy foglalkozz a programozás egy másik központi építőelemével: a while ciklusokkal. Ebben a útmutatóban megtanulod, hogy mik azok a while ciklusok, hogyan működnek, és hogyan használhatod őket hatékonyan a Python kódodban.
Legfontosabb megállapítások
- A while ciklusok ismétlik egy kód végrehajtását, amíg egy adott feltétel teljesül.
- Fontos, hogy a ciklus egyszer csak megálljon, hogy elkerüld a végtelen ciklusokat.
- A break, continue és pass segítségével irányíthatod a while ciklusok viselkedését.
A while ciklus alapjai
A while ciklus a Python egyik alapvető ciklus típusa, amely lehetővé teszi, hogy egy kódblokkot többször végrehajtsunk, amíg egy feltétel teljesül. Ezzel szemben a for ciklus a végrehajtást nem egy meghatározott iterációs számra ismétli, hanem addig, amíg a program logikája ezt megköveteli.
A while ciklus szintaxisa
Az alábbiakban részletesebben magyarázom el a while ciklus szerkezetét.

Először is, definiálsz egy feltételt, amelyet ellenőriznek. Ha a feltétel True (igaz), akkor a cikluson belüli kódblokk végrehajtódik. Minden egyes futás után a feltételt újra ellenőrzik.
Egy egyszerű példa
Tegyük fel, hogy szeretnéd növelni egy x változó értékét, amíg az kisebb mint 4.

Minden egyes futás során x növekszik, és az x aktuális értéke kiírásra kerül. Ez egészen addig tart, amíg a feltétel már nem teljesül.
A ciklus vége
Fontos, hogy a ciklus valamikor megálljon és a feltétel False értékre váltson. Különben egy végtelen ciklust hozol létre, amely a programod összeomlását okozhatja. Ennek elkerülése érdekében ügyelj arra, hogy az általad ellenőrzött változó ténylegesen változásokon menjen keresztül, így a feltétel sosem marad örökké True.

Else blokk a while ciklusokban
A while ciklusok egy másik hasznos aspektusa az else blokk használata. Ez a blokk végrehajtódik, amikor a ciklus véget ér és a feltétel már nem teljesül.

Ha a fenti kódot végrehajtod, a ciklus végén a "A futás befejeződött." üzenet jelenik meg.
A ciklusok irányítása break és continue használatával
Bonyolultabb programokban szükség lehet a while ciklusok viselkedésének további irányítására. Itt lépnek be a break, continue és pass parancsok.
Break
A break paranccsal manuálisan megszakíthatod a ciklust. Ha egy adott feltétel teljesül, akkor előre elhagyhatod a ciklust.

Ebben a példában a ciklus megszakad, amint x értéke 2 lesz, így csak x = 0 és x = 1 fog megjelenni.
Continue
A continue parancs ezzel szemben átugorja az aktuális iterációt és egyenesen a következőre ugrik.

Ebben az esetben x = 2 nem lesz megjelenítve, mert a végrehajtás a következő iterációra ugrik, amint x értéke 2 lesz.
Pass
A pass parancsot arra használják, hogy egy blokk utasítást üresen tartsanak, anélkül, hogy bármit végrehajtanának. Hasznos, ha helykitöltőre van szükséged, és még nem vagy biztos abban, hogy mi fog végrehajtódni ott.

Ebben a példában a while ciklusnak van egy feltétele, amely x = 2 esetén nem hat, de a kód továbbra is komplikációmentes marad.
Összefoglalás – While ciklusok a Pythonban: Útmutató kezdőknek
Ebben az útmutatóban megismerted a while ciklusok alapjait a Pythonban. Most már tudod, hogyan kell definiálni egy while ciklust, mi a szintaxisa, és mely funkciók, mint a break, continue és pass állnak rendelkezésedre a hatékony irányításhoz. Ne feledd, mindig győződj meg arról, hogy a ciklusod egyszer csak leáll, hogy elkerüld a végtelen ciklusokat.
Gyakran Ismételt Kérdések
Hogyan működik a while ciklus?A while ciklus egy kódblokk végrehajtását ismétli, amíg egy adott feltétel teljesül.
Milyen különbség van a break és a continue között?A break teljesen megszakítja a ciklust, míg a continue átugorja az aktuális iterációt és a következőhöz ugrik.
Hogyan kerülhetem el a végtelen ciklusokat a kódomon?Győződj meg róla, hogy a while ciklus feltétele előbb-utóbb nem igaz, az ellenőrzött változó megfelelő módosításával.
Árt a pass használata a ciklusomnak?Nem, a pass egy helykitöltő és nincs hatással a ciklusod viselkedésére. Csak a szintaktikai hibák elkerülésére szolgál.
Mi történik, ha a while ciklus feltétele eleve nem teljesül?Ha a feltétel az első futásnál nem teljesül, a ciklus kódblokkja soha nem hajtódik végre, de ha definiáltál else blokkját, az esetleg végrehajtódhat.