Za zmienku ešte stojí spomenúť správanie break
a continue
vo
vnorených cykloch. Oba príkazy sa viažu na najbližší uzatvárajúci
cyklus. To napríklad znamená, že z vnoreného cyklu sa nedá vyskočiť
"úplne" (mimo cyklov), ale iba do vonkajšieho cyklu.
# Program vypisuje dvojice cisel od 0 po 8 v poradi od najmensich
# dvojic az pokial prve cislo nie je delitelne 3 a zaroven druhe cislo
# nie je delitelne 2.
for i in range(8):
for j in range(8):
# Chyba! Z vonkajsieho cyklu nevyskocime!
if i % 3 == 0 and j % 2 == 0:
break
# Vypise i a j oddelene medzerou, ekv. s f'{i} {j}'.
print(i, j)
# Vystup:
# 0 0
# 0 1
# ...
# 0 7
# 1 0
# ...
# 3 1
# ! 3 2 sa nevypise, ale program pokracuje (chyba!)
# 4 0
# 4 1
# ...
V prípade, že by sme v príklade vyššie použili continue
namiesto
break
by ďalšia vypísana dvojica bola po vynechanej (3
2
) bola
(3
3
), pretože z vnútorného cyklu by sme nevyskočili úplne, ale iba
preskočili výpis.