W programowaniu, instrukcje warunkowe i pętle to podstawowe konstrukty, które pozwalają kontrolować przepływ wykonania programu. Python, podobnie jak wiele innych języków programowania, oferuje elastyczne mechanizmy sterowania, w tym możliwość użycia klauzuli else
w kontekście pętli for
i while
. Chociaż na pierwszy rzut oka może to wydawać się nietypowe, klauzula else
w pętli ma swoje praktyczne zastosowanie. W tym artykule przyjrzymy się, jak i kiedy korzystać z tej nieco enigmatycznej cechy języka Python.
Przykład zastosowania
Rozważmy następujący scenariusz: chcemy przejrzeć listę liczb i sprawdzić, czy jakaś liczba spełnia określone kryterium, na przykład czy jest liczbą pierwszą. Jeśli nie znajdziemy takiej liczby, chcemy wykonać pewną akcję po zakończeniu pętli. Tutaj właśnie przydaje się klauzula else
w pętli.
# Funkcja sprawdzająca, czy liczba jest liczbą pierwszą
def is_prime(number):
if number < 2:
return False
for i in range(2, int(number**0.5) + 1):
if number % i == 0:
return False
return True
# Lista liczb do sprawdzenia
numbers = [26, 39, 51, 53, 57, 79, 103]
# Pętla szukająca liczby pierwszej w liście
for num in numbers:
if is_prime(num):
print(f"{num} jest liczbą pierwszą")
break
else:
# Wykonuje się tylko, gdy pętla nie została
# przerwana przez 'break'
print("Nie znaleziono licz
Wyjaśnienie kodu
- Funkcja
is_prime(number)
sprawdza, czy podana liczba jest liczbą pierwszą. Jeśli liczba jest mniejsza niż 2, nie jest ona pierwsza. Następnie iterujemy od 2 do pierwiastka kwadratowego z tej liczby (włącznie), sprawdzając, czynumber
jest podzielne przez jakikolwiek z tych dzielników. Jeśli znajdziemy dzielnik, zwracamyFalse
; w przeciwnym razie zwracamyTrue
. - Następnie iterujemy przez listę
numbers
, szukając liczby pierwszej. Jeśli znajdziemy taką liczbę, drukujemy odpowiedni komunikat i przerywamy pętlę za pomocąbreak
. - Klauzula
else
po pętlifor
wykonuje się tylko wtedy, gdy pętla nie została przerwana przezbreak
. W tym przypadku oznacza to, że nie znaleziono liczby pierwszej w przeglądanej liście, i dlatego wyświetlamy odpowiedni komunikat.
Podsumowanie
Klauzula else
w pętlach Pythona to potężne narzędzie, które może poprawić czytelność kodu i ułatwić realizację niektórych algorytmów. Pozwala ona na wyraźne oddzielenie logiki wykonującej się w przypadku normalnego zakończenia pętli od tej, która jest wykonywana po przerwaniu pętli. Jak widać na powyższym przykładzie, jest to szczególnie przydatne w sytuacjach, gdy potrzebujemy wykonać pewne działania tylko wtedy, gdy pętla nie znajdzie szukanego elementu.
Jeżeli chcesz przyśpieszyć swoją naukę tworzenia stron chciałbym polecić mój kurs Python od podstaw w którym nauczysz się tego języka od podstaw do zaawansowanych jego aspektów.