Lekcja 8 – Pętle

Kurs: Darmowy kurs Python dla początkujących
Lekcja 8: Pętle

⇓ spis treści ⇓


Pętla for i while

Pętle to kluczowy element każdego języka programowania, który pozwala na wielokrotne wykonywanie określonego fragmentu kodu. Python oferuje dwa główne typy pętli: for i while. Obie są niezwykle wszechstronne i umożliwiają iterację po różnych strukturach danych lub wykonywanie kodu na podstawie warunków.

1. Pętla for

Pętla for w Pythonie służy do iteracji po elementach sekwencji, takich jak listy, krotki, stringi, słowniki, czy zakresy liczb (range). Jest to jedna z najczęściej używanych konstrukcji w Pythonie.

Przykład iteracji po liście:

# Pętla for - iteracja po liście
owoce = ["jabłko", "banan", "wiśnia"]

for owoc in owoce:
    print(f"Lubię {owoc}")

Wynik:

Lubię jabłko
Lubię banan
Lubię wiśnia

Iteracja po ciągu znaków:

# Pętla for - iteracja po stringu
napis = "Python"

for litera in napis:
    print(litera)

Wynik:

P
y
t
h
o
n

Iteracja po zakresie liczb za pomocą range():

# Pętla for - iteracja po zakresie liczb
for liczba in range(1, 6):
    print(liczba)

Wynik:

1
2
3
4
5
2. Pętla while

Pętla while wykonuje kod, dopóki określony warunek jest spełniony. Jest szczególnie przydatna w sytuacjach, gdy nie znamy z góry liczby iteracji.

Podstawowy przykład:

# Pętla while - przykład
licznik = 1

while licznik <= 5:
    print(f"Iteracja: {licznik}")
    licznik += 1

Wynik:

Iteracja: 1
Iteracja: 2
Iteracja: 3
Iteracja: 4
Iteracja: 5
3. Porównanie pętli for i while

Pętla for jest zazwyczaj używana, gdy liczba iteracji jest znana lub iterujemy po strukturze danych (np. lista, string). Pętla while jest bardziej odpowiednia, gdy liczba iteracji zależy od warunku, który zmienia się dynamicznie w trakcie wykonywania programu.

Przykład realizujący to samo zadanie za pomocą obu pętli:

# Pętla for
for liczba in range(1, 6):
    print(f"for: {liczba}")

# Pętla while
licznik = 1
while licznik <= 5:
    print(f"while: {licznik}")
    licznik += 1
4. Zagnieżdżone pętle

Python pozwala na używanie pętli wewnątrz innych pętli, co nazywamy pętlami zagnieżdżonymi. Przykład:

# Zagnieżdżone pętle
for i in range(1, 4):
    for j in range(1, 4):
        print(f"i={i}, j={j}")

Wynik:

i=1, j=1
i=1, j=2
i=1, j=3
i=2, j=1
i=2, j=2
i=2, j=3
i=3, j=1
i=3, j=2
i=3, j=3
5. Nieskończone pętle

Jeśli warunek w pętli while zawsze będzie spełniony (np. while True), utworzymy nieskończoną pętlę. Taka konstrukcja jest używana w przypadku programów, które mają działać w sposób ciągły (np. serwery), ale należy zawsze pamiętać o sposobie jej przerwania:

# Nieskończona pętla z warunkiem wyjścia
while True:
    komenda = input("Podaj komendę (napisz 'stop', aby zakończyć): ")
    if komenda == "stop":
        print("Pętla została zakończona.")
        break
    print(f"Wprowadziłeś: {komenda}")

Instrukcje break, continue, else w pętlach

Python oferuje specjalne instrukcje, takie jak break, continue oraz else, które pozwalają kontrolować przebieg działania pętli w bardziej zaawansowany sposób. Dzięki nim można łatwo przerywać pętle, pomijać iteracje lub wykonywać kod po zakończeniu pętli.

1. Instrukcja break

Instrukcja break pozwala natychmiast przerwać działanie pętli, niezależnie od tego, czy warunek iteracji został spełniony. Jest przydatna, gdy chcemy zatrzymać pętlę po spełnieniu określonego warunku.

# Przykład użycia break
for liczba in range(1, 11):
    if liczba == 5:
        print("Przerywam pętlę, bo liczba wynosi 5")
        break
    print(f"Liczba: {liczba}")

Wynik:

Liczba: 1
Liczba: 2
Liczba: 3
Liczba: 4
Przerywam pętlę, bo liczba wynosi 5
2. Instrukcja continue

Instrukcja continue powoduje pominięcie bieżącej iteracji pętli i przejście do następnej. Kod znajdujący się poniżej continue w bieżącej iteracji nie zostanie wykonany.

# Przykład użycia continue
for liczba in range(1, 6):
    if liczba == 3:
        print("Pomijam liczbę 3")
        continue
    print(f"Liczba: {liczba}")

Wynik:

Liczba: 1
Liczba: 2
Pomijam liczbę 3
Liczba: 4
Liczba: 5
3. Instrukcja else w pętlach

Instrukcja else w pętli pozwala na wykonanie określonego kodu po zakończeniu wszystkich iteracji pętli. Jest wykonywana tylko wtedy, gdy pętla nie została przerwana za pomocą break.

# Przykład użycia else z pętlą for
for liczba in range(1, 6):
    if liczba == 7:
        print("Przerywam pętlę")
        break
    print(f"Liczba: {liczba}")
else:
    print("Pętla zakończona bez przerwań")

Wynik:

Liczba: 1
Liczba: 2
Liczba: 3
Liczba: 4
Liczba: 5
Pętla zakończona bez przerwań

Przykład z pętlą while:

# Przykład użycia else z pętlą while
licznik = 1
while licznik <= 5:
    if licznik == 7:
        print("Przerywam pętlę")
        break
    print(f"Licznik: {licznik}")
    licznik += 1
else:
    print("Pętla zakończona bez przerwań")

Wynik:

Licznik: 1
Licznik: 2
Licznik: 3
Licznik: 4
Licznik: 5
Pętla zakończona bez przerwań
4. Praktyczne zastosowanie instrukcji

Instrukcje break, continue i else mogą być używane w bardziej złożonych scenariuszach, takich jak wyszukiwanie wartości w danych lub kontrola przepływu programu:

# Wyszukiwanie elementu na liście
liczby = [1, 2, 3, 4, 5]

for liczba in liczby:
    if liczba == 3:
        print("Znaleziono liczbę 3")
        break
else:
    print("Nie znaleziono liczby 3")

Wynik:

Znaleziono liczbę 3
# Pomijanie nieparzystych liczb i zliczanie parzystych
liczby = [1, 2, 3, 4, 5, 6]
licznik_parzystych = 0

for liczba in liczby:
    if liczba % 2 != 0:
        continue  # Pomijamy nieparzyste liczby
    licznik_parzystych += 1

print(f"Liczba parzystych: {licznik_parzystych}")

Wynik:

Liczba parzystych: 3

Następna lekcja ==> Funkcje



Spis Treści - darmowy kurs Python dla początkujących


Lekcja 1: Wprowadzenie do programowania
- Co to jest programowanie?
- Dlaczego warto uczyć się Pythona?
- Instalacja Python i wprowadzenie do edytorów (IDLE, VS Code).
Lekcja 2: Pierwszy program w Pythonie
- Składnia Pythona.
- Wyświetlanie tekstu (funkcja print).
- Komentarze i ich znaczenie.
Lekcja 3: Podstawowe typy danych
- Liczby: int, float.
- Ciągi znaków (stringi).
- Typ logiczny (boolean).
- Funkcja type.
Lekcja 4: Zmienne i operatory
- Deklaracja i przypisywanie zmiennych.
- Operatory arytmetyczne, porównania, logiczne.
Lekcja 5: Listy i krotki
- Tworzenie list i krotek.
- Indeksowanie, dodawanie, usuwanie elementów.
- Operacje na listach.
Lekcja 6: Słowniki i zbiory
- Tworzenie i operacje na słownikach.
- Iteracja po słownikach.
- Zbiory i ich zastosowania.
Lekcja 7: Instrukcje warunkowe
- Instrukcje if, elif, else.
- Operatory logiczne w praktyce.
Lekcja 8: Pętle
- Pętla for i while.
- Instrukcje break, continue, else w pętlach.
Lekcja 9: Funkcje
- Tworzenie i wywoływanie funkcji.
- Argumenty i wartości domyślne.
- Funkcje anonimowe (lambda).
Lekcja 10: Praca z plikami
- Otwieranie, czytanie i zapisywanie plików.
- Obsługa błędów przy pracy z plikami.
Lekcja 11: Podstawy programowania obiektowego
- Klasy i obiekty.
- Atrybuty i metody.
- Prosty projekt: Zarządzanie listą zadań.
Lekcja 12: Tworzenie prostego kalkulatora
- Łączenie funkcji i warunków.
- Obsługa błędów (try-except).
Lekcja 13: Zarządzanie plikami tekstowymi
- Program do przechowywania i wyszukiwania notatek w plikach.
Lekcja 14: Prosta gra tekstowa w Python
- Wprowadzenie do pętli i logiki gry.
- Interaktywna gra konsolowa, np. zgadywanie liczby.

Jeśli chciałbyś być poinformowany o następnych kursach to zapisz się do naszego newslettera: