Ismétléses vezérlés¶
A Pythonnak két primitív ciklusparancsa van:
- while
- for
while ciklus¶
A while ciklussal utasításkészletet hajthatunk végre, amíg egy feltétel igaz.
Végtelen ciklus
Ne felejtsd el növelni az i
-t, különben a ciklus örökké folytatódik.
else utasítás¶
Az else
utasítással egyszer lefuttathatunk egy kódblokkot, amikor a feltétel már nem igaz:
Írassuk ki i
-t, amíg i
kisebb, mint 6
for ciklus¶
A for ciklus egy sorozat (vagyis egy lista, egy tuple, egy szótár, egy halmaz vagy egy karakterlánc) feletti iterációra szolgál. Ez kevésbé hasonlít a for kulcsszóhoz más programozási nyelvekben, és inkább egy iterátor módszerként működik.
Iteráció egy listán¶
A for ciklushoz nincs szükség indexelési változóra, amelyet előzetesen be kell állítani.
Szöveg bejárása¶
Még a karakterláncok is iterálható objektumok, karaktersorozatot tartalmaznak:
range
függvény¶
A range()
függvény gyakran kapcsolódik a for ciklushoz, mivel egy sorozatot generál, amelyen végig tudunk iterálni.
Paraméterezés
A range()
függvény három paramétert fogad:
start
- a sorozat kezdőértéke (opcionális)stop
- a sorozat végső értékestep
- a sorozat lépésköze (opcionális)
A start
alapértelmezett értéke 0, a step
alapértelmezett értéke 1.
Például
enumerate
függvény¶
Az enumerate()
függvény egy beépített Python függvény, amelyet akkor használunk, ha egy iterable objektumot (például listát, tuple-t vagy stringet) szeretnénk bejárni úgy, hogy közben az indexet és az elemet is elérjük.
Az enumerate()
visszaad egy enumerált objektumot, amely a futás közben minden egyes iterációban egy tuple-t generál: az indexet és az aktuális elemet.
Szintaxis
iterable
: Az a sorozat, amelyen végig akarunk menni.start
: Az indexelés kezdő értéke (alapértelmezés szerint 0).
Hogyan működik?
Az enumerate()
függvény az iterable minden egyes elemére a for ciklus során visszaadja a ciklusváltozókat: az indexet és az elemet egyszerre. Ez különösen hasznos, ha egyszerre szeretnénk egy elemet és annak a sorszámát használni, anélkül, hogy manuálisan kellene nyilvántartani az indexet egy számláló változóval.
Például
else utasítás a for ciklusban¶
Az else
kulcsszó a for ciklusban egy kódblokkot határoz meg, amelyet a ciklus végén kell végrehajtani:
Ciklusok megszakítása¶
break¶
A break
utasítással leállíthatjuk a ciklust:
continue¶
A continue
utasítással leállíthatjuk az aktuális iterációt, és folytathatjuk a következővel:
Gyakorló feladatok¶
- Írj egy programot, amely kiírja az összes páros számot 0-tól 20-ig!
- Készíts egy programot, amely megszakítja a ciklust, ha egy bizonyos számot talál!
- Írj egy programot, amely végigiterál egy szövegen, és csak a magánhangzókat írja ki!