Команда if в Python работает по той же схеме, что и в других языках программирования. Она содержит в себе логическое условие, и если это условие истинно (равно True) - выполнится блок кода, записанный внутри команды if. Если же логическое условие ложно (равно False), то блок кода записанный внутри команды if пропускается, а выполнение кода переходит на следующую после блока if строчку кода.

Например:

1 | # Происходит сравнение переменной num с нулем

2 | if num > 0:

3 | # Если переменная больше нуля, то печатается строка

4 | print "Число больше нуля"

5 | # Данная строка печатается в любом случае, поскольку она находится вне блока if

6 | print "Строка после блока if"

Конструкция if...else в Python:

В конструкцию if может быть добавлена команда else. Она содержит блок кода, который выполняется, если условие в команде if ложно.

Команда else является опциональной, в каждой if - конструкции может быть только одна команда else.

Например:

1 | if num > 0:

2 | # если переменная num больше нуля то выполняется этот блок кода

3 | print "Число больше нуля"

4 | else:

5 | # иначе выполнится этот блок кода

6 | print "Число меньше или равно нулю"

Команда elif в Python:

Команда elif позволяет проверить истинность нескольких выражений и в зависимости от результата проверки, выполнить нужный блок кода.

Как и команда else, команда elif являктся опциональной, однако, в отличие от команды else, у одной if-конструкции может существовать произвольное количество команд elif.

Например:

1 | # Производится последовательное сравнение переменной num.

2 | # Если num больше ста выполняется код в строке 4 и выполнение переходит на строку 13, иначе выполняется проверка в строке 6

3 | if num > 100:

4 | print "Число больше ста"

5 | # Если num больше пятидесяти - выполняется код в строке 7 и выполнение переходит на строку 13, иначе выполняется проверка в строке 8 и т.д.

6 | elif num > 50:

7 | print "Число больше пятидесяти"

8 | elif num > 25:

9 | print "Число больше двадцати пяти"

10 | # Если результат всех проверок оказался ложным выполняется блок в строке 11, после чего переходим на строку 13

11 | else:

12 | print "Число меньше двадцати пяти"

13 | print "Финальная строка"

Базовый Python не поддерживает конструкцию switch/case, как, например, JavaScript, но ее возможно реализовать при помощи if...elif...else конструкции.

Вложенные условные конструкции в Python:

В процессе разработки может возникнуть ситуация, в которой после одной истинной проверки следует сделать еще несколько. В таком случае необходимо использовать вложенные условные конструкции. То есть одну if...elif...else конструкцию внутри другой.

Например:

1 | if num > 100:

2 | if num < 150:

3 | print "Число больше ста, но меньше ста пятидесяти"

4 | elif num < 200:

5 | print "Число больше ста, но меньше двухсот"

6 | elif num > 50:

7 | if num < 90:

8 | print "Число больше пятидесяти, но меньше девяноста"

9 | else:

10 | print "Число больше пятидесяти и больше девяноста"

11 | else:

12 | print "Число меньше пятидесяти"

Логика выполнения вложенных условных конструкций та же, что и у обычных. Главное не запутаться с отступами и порядком выполнения сравнений.

<p>Циклы в Python</p>

Published: 18 October 2014

Перейти на страницу:

Похожие книги