Powtórzenie tej samej linijki w kodzie 10 razy jest całkiem łatwe, ale co, gdy będziemy musieli powtórzyć ją 100 000 razy albo nieokreśloną ilość razy? W językach programowania takich jak Python do rozwiązywania tych problemów służą pętle, czyli funkcje powtarzające dane instrukcje, dopóki będzie spełniony jakiś warunek.
Budowa pętli for:
for iterator in range(a, b, c):
kod, który ma się powtarzać
iterator - przykładowa nazwa zmiennej, najczęściej używana jest nazwa "i"
a, b, c - liczby ograniczające przedział funkcji range()
Czasami nie musimy wpisywać wszystkich argumentów do funkcji range(). Spójrzmy na przykłady:
for i in range(5):
print(i)
0
1
2
3
4
for i in range(3, 8):
print(i)
3
4
5
6
7
for i in range(3, 8, 2):
print(i)
3
5
7
Jak widać na powyższych przykładach, jeśli wpiszemy tylko jeden argument do funkcji range(), to iterator będzie
osiągać wartości od 0, do danego argumentu, nie osiągając go. Pętla będzie wykonywać się tyle razy, ile jest równy argument.
Jeśli wpiszemy dwa argumenty, to pętla będzie wykonywać się od pierwszego argumentu do drugiego, nie osiągając końcowego.
Wpisując trzeci argument, pętla wykonywać się będzie w podobny sposób, gdyby były tylko dwa argumenty,
jednak iterator nie będzie rosnąć o 1, tylko o dany trzeci argument.
Krok, czyli wartość o którą zmienia się iterator, może być również ujemny, spójrzmy na poniższe przykłady:
for i in range(5, 2, -1):
print(i)
5
4
3
for i in range(2, 5, -1):
print(i)
for i in range(6, 2, -2):
print(i)
6
4
Do funkcji range() nie musimy podawać tylko liczb, możemy również umieścić w niej zmienną o typie całkowitym. Dla przykładu program obliczający sumę liczb od 0 do n, gdzie n jest liczbą wprowadzoną przez użytkownika:
n=int(input())
s=0
for i in range(n+1):
s+=i
print(s)
10
55