Na poslednej hodine sme sa venovali cyklu - je to konštrukcia, ktorá nám umožňuje ľahko vykonať nejaký príkaz alebo skupinu príkazov opakovane. Príkazy, ktoré chceme zopakovať tak nemusíme v kóde kopírovať, stačí použiť cyklus a určiť, koľkokrát sa vykonajú príkazy v ňom (v tele cyklu). Pre zopakovanie si pozri kód nižšie.
for i in range(10):
print("Bilicka je najlepsia skola na svete")
použitie cyklu for
Tento program vypíše 10 krát vetu "Bilicka je najlepsia skola na svete". Pozor na dvojbodku na konci prvého riadku a na odsadenie (tabulátor) na začiatku ostatných riadkov, ktoré určuje, ktoré riadky tvoria telo cyklu a budú sa opakovať daný počet krát. Výpis programu:
Bilicka je najlepsia skola na svete
Bilicka je najlepsia skola na svete
Bilicka je najlepsia skola na svete
Bilicka je najlepsia skola na svete
Bilicka je najlepsia skola na svete
Bilicka je najlepsia skola na svete
Bilicka je najlepsia skola na svete
Bilicka je najlepsia skola na svete
Bilicka je najlepsia skola na svete
Bilicka je najlepsia skola na svete
výpis programu vyššie
Všimnite si prvý riadok v definícii cyklu "for i in range():". Vo voľnom preklade by sme možno povedali "pre i v rozsahu 10", táto "veta" a aj jej preklad naozaj dávajú zmysel - i je totižto premenná a postupne, počas vykonávania cyklu sa v nej vyskytnú všetky čísla v rozsahu 10, konkrétne čísla 0, 1, 2, 3, 4, 5, 6, 7, 8, a 9. To, že i je premenná si ľahko overíte, skúste namiesto i napísať do programu iný platný názov premennej, napríklad vevericka
for vevericka in range(10):
print("slon")
iteračnú premennú cyklu for môžeme premenovať
Iteračná premenná je platná v tele cyklu a môžeme ju používať. Pozor! Do iteračnej premennej nebudeme v cykle priraďovať žiadne hodnoty, môžeme ju však použiť vo výpočtoch a výpisoch. Premenná je užitočná, pretože sa ňou odlyšujú jednotlivé behy cyklu - v našom kóde sa cyklus vykoná 10 krát, najprv tak, že premenná vevericka má v sebe hodnotu 0, potom 1, potom 2 ... až 9. Pozri sa na kód:
for vevericka in range(10):
print("v iteracnej premennej je hodnota", vevericka)
Vypíše:
v iteracnej premennej je hodnota 0
v iteracnej premennej je hodnota 1
v iteracnej premennej je hodnota 2
v iteracnej premennej je hodnota 3
v iteracnej premennej je hodnota 4
v iteracnej premennej je hodnota 5
v iteracnej premennej je hodnota 6
v iteracnej premennej je hodnota 7
v iteracnej premennej je hodnota 8
v iteracnej premennej je hodnota 9
Príkaz range() môžeme použiť s rôznym počtom parametrov: