6.1 if else
В Python, как и во многих языках программирования, команды можно выполнять не только линейно, но и выборочно, согласно некоторому условию. Называется такая конструкция условным оператором. Общий вид условного оператора выглядит так:
if условие:
команда1
else:
команда2
Если условие истинно (правда, True), то выполнится команда1, если ложно (ложь, False) то выполнится команда2. Команды никогда не выполнятся одновременно: или одна, или вторая.
Важно! Дочерняя команда или команды обязательно(!) должны быть сдвинуты на 4 пробела относительно команд if и else. Более подробно об этом я расскажу в следующей лекции «Блок команд».
Примеры:
|
Условие y > 5 ложно, поэтому выполнится ветка else и программа напечатает "y не больше 5" |
Еще пример:
|
Если пользователь введет число 18 и больше, то программа напечатает «вы совершеннолетний», иначе напечатает «иди делать уроки». |
6.2 if без else
Существуют еще 2 формы условного оператора – сокращенная и удлиненная.
В сокращенной форме отсутствует часть else.
if условие:
команда
Если условие истинно, то команда выполнится. Если не истинно, то не выполнится ничего – программа пойдет дальше и будет выполнять остальные команды, если они есть.
Пример:
|
Если пользователь введет число 21 и больше, то программа напечатает «вот ваше пиво». Если число меньше 21 – программа не напечатает ничего. |
6.3 if elif else
Удлиненная форма оператора if else позволяет склеить несколько операторов if else в один.
Допустим, вы хотите определить, к какой четверти координатной плоскости принадлежит точка с координатами x и y. Вот как это можно сделать с помощью оператора if и else:
|
Если x > 0 и y > 0 то будет выведена надпись «первая четверть». Если x < 0 и y > 0 то будет выведена надпись «вторая четверть». Если x < 0 и y < 0 то будет выведена надпись «третья четверть». Если x > 0 и y < 0 то будет выведена надпись «четвертая четверть». |
Поскольку не добавлять отступы нельзя, а код хочется сделать читаемым, был придуман специальный оператор elif, который позволяет превратить такие цепочки if-ов во что-то более читаемое. Выглядит он так:
if условие1:
команда1
elif условие2:
команда2
elif условиеN:
командаN
else:
командаElse
Ключевое слово elif – это сокращение от else if. А код из примера выше теперь можно записать в виде:
|
Если x > 0 и y > 0 то будет выведена надпись «первая четверть». Если x < 0 и y > 0 то будет выведена надпись «вторая четверть». Если x < 0 и y < 0 то будет выведена надпись «третья четверть». Если x > 0 и y < 0 то будет выведена надпись «четвертая четверть». |
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ