Rozdział 9 · Słuchaj mojego rozkazu!

elif — kilka opcji

Gdy jest więcej niż dwa wyniki, elif sprawdza warunki kolejno, a pierwszy prawdziwy wygrywa.

Kiedy jest więcej niż dwa wyniki

Temperatura: poniżej zera – "mróz", od 0 do 14 – "chłodno", od 15 do 24 – "komfortowo", w przeciwnym razie "gorąco". Są tu cztery wyniki, nie dwa if/else już brakuje.

STARTtemperaturetemperature <0?TAK„mróz”NIEtemperature <15?TAK„fajne”NIEtemperature <25?TAK„komfortowo"NIE„gorący”KONIEC
if/elif/else jako drabinka warunków – pierwszy prawdziwy warunek wygrywa, reszta jest pomijana
elif_cepochka.py
temperature = 10

if temperature < 0:
    print(„mróz”)
elif temperature < 15:
    print(„fajne”)
elif temperature < 25:
    print(„komfortowo")
else:
    print(„gorący”)

elif — skrót od else if, „w przeciwnym razie jeśli” if oraz else.

Pierwszy prawdziwy warunek wygrywa

Python sprawdza warunki w porządku, od góry do dołu, i zatrzymuje się na pierwszym prawdziwym — nawet jeśli kolejne warunki również by pasowały. Reszta łańcucha jest po prostu pomijana.

Kolejność warunków ma znaczenie

nepravilnyj_poryadok.py
score = 95

if score >= 50:
    bukva = "D"
elif score >= 90:
    bukva = "A"   # nigdy nie zostanie spełnione przez score >= 50!
score >= 50?TrueFalsebranch wybrany —inne elifPOMINIĘTE, nawet >=…sprawdź następującewarunek
score = 95: Jeśli >= 50 pojawi się pierwsze, program nigdy nie osiągnie >= 90
score = 95 trafi do "D" zamiast do "A"
razy score >= 50 jest pierwszym i 95 >= 50 prawda, Python wybiera tę konkretną gałąź i nawet nie sprawdza score >= 90.

Poprawka polega na uporządkowaniu warunków od bardziej rygorystycznych do mniej rygorystycznych:

pravilnyj_poryadok.py
score = 95

if score >= 90:
    bukva = "A"
elif score >= 75:
    bukva = "B"
elif score >= 50:
    bukva = "C"
else:
    bukva = "D"
★★ Zadanie samodzielne
Trzy poziomy rabatu

Zbuduj drabinę elif-: kwota zakupu >= 5000 - 15% zniżka, >= 2000 - 10% zniżka, >= 500 - 5% zniżka, w przeciwnym razie brak rabatu. Sprawdź kwotę 3000 - która zniżka wygra?

Praktyka: Kolejność drabiny elif- i stan
interaktywny laptop bezpośrednio w przeglądarce – Python 3.14 przez Pyodide, bez instalacji
Otwórz praktykę →