Pętle w Pythonie

Preview Mode

You're viewing this material in preview mode. Sign up to track your progress and access all features.

Pętle w Pythonie
In Progress

Pętle to sposób na powtarzanie czynności w programie — zamiast przepisywać ten sam kod wiele razy, umieszczamy go wewnątrz pętli, która wykona go wielokrotnie. W Pythonie mamy dwie najważniejsze pętle: for i while. Poniżej znajdziesz wyjaśnienia, krótkie przykłady i wskazówki krok po kroku.

Pętla for — kiedy używać

Pętlę for stosujemy, gdy chcemy przejść po wszystkich elementach jakiejś sekwencji (np. lista, krotka, napis) lub po kolejnych liczbach generowanych przez range().

  • range(start, stop, krok)
  • start — pierwszy element (domyślnie 0)
  • stop — wartość, przy której przestajemy (STOP nie jest wliczana)
  • krok — co ile rośnie wartość (domyślnie 1). Może być ujemny, żeby iterować malejąco.

Przykład: wypisanie liczb 0–4

for i in range(5):   # to samo co range(0, 5, 1)
    print(i)

Krok po kroku:

  1. Wywołujemy range(5) — daje sekwencję 0,1,2,3,4.
  2. Za każdym razem zmienna i przyjmuje kolejną wartość z tej sekwencji.
  3. W ciele pętli wykonujemy print(i).
  4. Gdy sekwencja się skończy (po 4), pętla kończy działanie.

Inny przykład pokazujący użycie parametru krok — wypisanie nieparzystych liczb od 1 do 9:

for x in range(1, 10, 2):
    print(x)  # wypisze 1, 3, 5, 7, 9

Przykład iterowania po liście:

names = ["Ala", "Ola", "Jan"]
for name in names:
    print("Cześć", name)

Pętla while — kiedy używać

Pętlę while stosujemy wtedy, gdy chcemy powtarzać fragment kodu tak długo, jak spełniony jest pewien warunek logiczny. Należy uważać na ryzyko pętli nieskończonej — trzeba zapewnić, że warunek kiedyś przestanie być prawdziwy.

Przykład: odliczanie (inny niż w zadaniach, krótkie i wyjaśnione)

n = 4
while n > 0:
    print("Zostało:", n)
    n = n - 1  # zmniejszamy n, żeby pętla się kiedyś zakończyła

Krok po kroku:

  1. Na początku n ma wartość 4.
  2. Sprawdzamy warunek n > 0 — jest prawdziwy, wchodzimy do pętli.
  3. Wypisujemy "Zostało: 4", potem zmniejszamy n o 1.
  4. Wracamy do sprawdzenia warunku. Gdy n osiągnie 0, warunek będzie fałszywy i pętla się zakończy.

Uwaga: jeśli zapomnisz zmienić zmiennego warunku (np. zapomnisz n = n - 1), pętla będzie wykonywać się w kółko — to błąd nazywany pętlą nieskończoną.

Dodatkowe przydatne konstrukcje

  • break — natychmiast przerywa działanie pętli.
  • continue — przerywa bieżącą iterację i przechodzi do następnej.
  • enumerate() — przydatne w for, gdy potrzebujesz indeksu i wartości jednocześnie.

Przykład z enumerate:

fruits = ["jabłko", "banan", "gruszka"]
for index, fruit in enumerate(fruits, start=1):
    print(index, fruit)  # wypisze numer pozycji i nazwę owocu

Wskazówki do zadań (nie podajemy gotowych rozwiązań — spróbuj samodzielnie)

Zadania do wykonania:

  1. Użyj pętli for, aby wypisać liczby od 1 do 5. 
    Wskazówka: pomyśl, jakie wartości powinien mieć start i stop w range(). Możesz najpierw zapisać szkic:

    for i in range( ... ):
        # wypisz i
  2. Użyj pętli for, aby wypisać liczby parzyste od 2 do 10. 
    Wskazówka: range() może mieć trzy argumenty — start, stop, step. Zastanów się, jaki krok (step) da tylko liczby parzyste. Możesz też najpierw wypisać sekwencję na kartce, sprawdzając, które wartości będą generowane.
  3. Użyj pętli while do odliczania: ustaw zmienną tak, aby zaczynała od 5 i wypisuj ją malejąco do 1, zmniejszając ją przy każdej iteracji. 
    Wskazówka: napisz najpierw szkic:

    i = 5
    while i > 0:
        # wypisz i
        # zmniejsz i

    Pamiętaj, że jeśli zapomnisz zmniejszyć i, pętla nigdy się nie skończy.

Jeśli chcesz, sprawdź swój kod uruchamiając go w interpreterze Pythona (np. w terminalu, w środowisku edukacyjnym lub w edytorze online). Jeśli napotkasz błąd lub efekt nie jest taki, jak oczekiwałeś, skopiuj tutaj swój kod — pomogę znaleźć, co trzeba poprawić, ale nie dam gotowego rozwiązania.