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.
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
score = 95
if score >= 50:
bukva = "D"
elif score >= 90:
bukva = "A" # nigdy nie zostanie spełnione przez score >= 50!
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:
score = 95
if score >= 90:
bukva = "A"
elif score >= 75:
bukva = "B"
elif score >= 50:
bukva = "C"
else:
bukva = "D"
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?