6

Warunki: if i else – program podejmuje decyzję

Materiały tej lekcji są na razie tylko do czytania na stronie. Kod przepisz albo skopiuj do swojego edytora.

Czego się nauczysz

Wszystko, co dotąd pisałeś, wykonywało się od pierwszej linii do ostatniej, zawsze tak samo. Od dziś program może wybierać: jedno zrobi w jednej sytuacji, a co innego w drugiej. To moment, w którym lista poleceń staje się programem.

Po tej lekcji:

Budowa instrukcji if

Instrukcja if sprawdza warunek. Jeśli jest prawdziwy, wykonuje przypisany do siebie fragment. Jeśli fałszywy – pomija go i idzie dalej.

wiek = 20
if wiek >= 18:
    print("Pelnoletni")
    print("Mozesz glosowac")
print("Koniec")

Cztery elementy, wszystkie obowiązkowe:

  1. słowo if,
  2. warunek, czyli coś, co jest prawdą albo nieprawdą,
  3. dwukropek na końcu linii,
  4. wcięcie w liniach, które mają się wykonać warunkowo.

Wcięcie decyduje o wszystkim

Python rozpoznaje po wcięciu, które linie należą do warunku. Linia wcięta wykona się tylko wtedy, gdy warunek jest prawdziwy. Linia bez wcięcia wykona się zawsze.

Standard to cztery spacje. Edytor zwykle wstawia je sam po dwukropku.

Operatory porównania

Porównywać można też teksty: imie == "Anna" jest prawdą, gdy w zmiennej siedzi dokładnie ten napis. Wielkość liter ma znaczenie – "Ala" == "ala" to fałsz.

Jeden znak równości to co innego niż dwa

To najczęstsza pomyłka na tej lekcji.

ocena = 5          # przypisanie
if ocena == 5:     # porównanie
    print("Piatka!")

Zapis if ocena = 5: kończy się błędem SyntaxError.

Sposób na zapamiętanie: jeśli w zdaniu pytasz „czy?”, potrzebujesz dwóch znaków. Jeśli mówisz „niech będzie”, wystarczy jeden.

else – gdy warunek nie jest spełniony

Blok else wykonuje się dokładnie wtedy, gdy warunek z if okazał się fałszywy. Zawsze wykona się jeden z dwóch bloków – nigdy oba i nigdy żaden.

wiek = 15
if wiek >= 18:
    print("Pelnoletni")
else:
    print("Niepelnoletni")

Spróbuj sam

W kodzie z lekcji zmieniaj wartości zmiennych (wiek, ocena, haslo) i sprawdzaj, którą drogą pójdzie program. Możesz też usunąć # z linii if x = 5: i zobaczyć błąd na własne oczy.

Zadania z lekcji:

  1. Utwórz zmienną ocena. Jeśli jest większa lub równa 3, wypisz „Zdane”, w przeciwnym razie „Niezdane”. Sprawdź program dla kilku wartości.
  2. Utwórz zmienną liczba. Wypisz, czy jest parzysta, czy nieparzysta. Skorzystaj z reszty z dzielenia z lekcji 4.
  3. Utwórz zmienną haslo. Jeśli jest równe admin, wypisz „Dostep przyznany”, w przeciwnym razie „Odmowa dostepu”.
  4. Utwórz dwie zmienne liczbowe i wypisz, która jest większa. Jeśli są równe, wypisz, że są równe.

Sprawdź się

Na następnej lekcji: elif, czyli więcej niż dwie możliwe drogi – i dlaczego kolejność warunków potrafi zmienić wynik programu.

Notatki

PDF
Zadania utrwalające Karta pracy do tej lekcji: zadania sprawdzające i domowe do samodzielnego zrobienia w swoim edytorze · 4 strony.
Zadania utrwalające – Warunki: if i else – program podejmuje decyzję
Strona 1 z 4 Strona 2 z 4 Strona 3 z 4 Strona 4 z 4

Prezentacja

Slajd 1 z 8
1 / 8

Kod

Otwórz kod, zmieniaj go i uruchamiaj na stronie – np. usuń # z linii oznaczonej jako błąd i zobacz, co się stanie. „Przywróć” wraca do wersji z lekcji.

PY
demo_06_warunki-if-else.py Kod z lekcji – otwórz, zmieniaj i uruchamiaj; wynik zobaczysz obok kodu.
demo_06_warunki-if-else.py
Wynik programu
Kliknij „Uruchom”, żeby zobaczyć tutaj wynik programu.