Вопрос Зачем нужен elif в python

Например, тебе нужно вычислить знак числа: -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:
# Действия, выполняемые, если ни одно из условий не выполнено
 
Потому что elif уже включает в себя результат проверки всех if выше = False.
Например, это полезно при сортировке
 
Ну не будешь же ты писать обратное условие в каждый 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
 
Назад
Сверху