Например, тебе нужно вычислить знак числа: -1 для отрицательных, +1 для положительных, 0 для нуля. Ты можешь написать без elif: if a < 0:
sign = -1
else:
if a > 0:
sign = 1
else:
sign = 0 А можешь написать: if a < 0:
sign = -1
elif a > 0:
sign = 1
else:
sign = 0 elif - это заменитель else if. Вариант с elif короче, лучше читается и не создаёт лишних отступов.
Для множественного выбора: проверки диапазонов, типов и значений:
if condition1:
# Действия, выполняемые при выполнении condition1
elif condition2:
# Действия, выполняемые при выполнении condition2
elif condition3:
# Действия, выполняемые при выполнении condition3
else:
# Действия, выполняемые, если ни одно из условий не выполнено
Ну не будешь же ты писать обратное условие в каждый if...
типа вместо if x % 8 == 0:
...
elif x % 4 == 0:
...
elif x % 2 == 0:
... ты собираешься писать if x % 8 == 0:
...
if x % 8 != 0 and x % 4 == 0:
...
if x % 8 != 0 and x % 4 != 0 and x % 2 == 0:
... ?
если if не выполнился, выполняется проверка дальше elif. Если будет 2 if и 2 условия станут true то выполнятся два if. Если будет if elif, то если они будут оба true, то выполнится только первый if