Kurs: Darmowy kurs Python dla początkujących
Lekcja 8: Pętle
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: