Операторы if, elif и else в Python 3

Операторы if, elif и else в Python 3

В этой статье вы научитесь создавать операторы ветвления в своих программах на Python, используя операторы if, elif и else.

Введение

В разработке бывают моменты, когда мы хотим принять решения только при выполнении определенного условия. Для этого мы используем различные формы оператора if-elif-else.

Официальная документация на сайте Python.org

Использование оператора if

Рассмотрим пример использования одиночного оператора if.

Синтаксис оператора if выглядит таким образом:

if function_returned_true:
    other_function()

Здесь программа вычисляет function_returned_true — тестовое выражение, и выполняет условия оператора только в том случае, если тестовое выражение истинно — True.

Если function_returned_true ложно — False, оператор(ы) не выполняется.

В Python тело оператора if обозначается отступом. Тело начинается с углубления, и первая неиндентированная линия отмечает конец.

Python интерпретирует ненулевые значения как True. None и 0 интерпретируются как False.

Теперь рассмотрим конкретный пример в написании кода:

chislo = 12
if chislo > 0:
    print(chislo, "Положительное число.")
print("Этот текст будет напечатан всегда.")

chislo = -5
if chislo > 0:
    print(chislo, "Положительное число.")
print("Этот текст будет напечатан всегда.")

Вывод программы:

12 Положительное число.
Этот текст будет напечатан всегда.
Этот текст будет напечатан всегда.

В приведенном выше примере chislo > 0 является тестовым выражением.

Тело if выполняется только в том случае, если оно имеет значение True.

Когда переменная chislo равна 12, тестовое выражение истинно и выполняются операторы внутри тела if.

Если переменная chislo равна -5, то тестовое выражение ложно и операторы внутри тела if пропускаются.

Оператор print выходит за пределы блока if. Следовательно, он выполняется независимо от тестового выражения.

Использование оператора if и else

Рассмотрим пример использования оператора if вместе с else.

Синтаксис оператора if вместе с else выглядит таким образом:

if function_returned_true_or_false():
    function_true()
else:
    function_false()

Оператор if и else вычисляет тестовое выражение — function_returned_true_or_false и выполняет тело if только тогда, когда условие теста истинно — True.

Если условие ложно — False, выполняется тело else. Отступ используется для разделения блоков.

Рассмотрим пример:

numeric = 7

if numeric >= 0:
    print("Положительное число или ноль")
else:
    print("Отрицательное число")

Вывод программы:

Положительное число или ноль

В приведенном выше примере, когда numeric равно 7, тестовое выражение истинно, тело if выполняется, а тело else пропускается.

Если numeric равно -5, то тестовое выражение ложно, тело else выполняется, а тело if пропускается.

Если numeric равно 0, то тестовое выражение истинно, тело if выполняется, а тело else пропускается.

Использование оператора if, elif и else

Рассмотрим пример использования оператора if вместе с elif и else.

Синтаксис оператора if вместе с elif и else выглядит таким образом:

if test_one():
    run_test_one()
elif test_two():
    run_test_two()
else:
    run_test_else()

Elif — это сокращение от else..if. Это позволяет нам проверять наличие нескольких выражений.

Если условие if ложно, то оно проверяет состояние следующего блока elif и так далее.

Если все условия ложны — False, то тело else выполняется.

Только один блок из нескольких блоков if…elif…else выполняется в соответствии с условием.

Блок if может иметь только один блок else. Но он также может иметь несколько блоков elif.

Давайте рассмотрим конкретный пример:

numeric = 4.5

if numeric > 0:
    print("Положительное число")
elif numeric == 0:
    print("Ноль")
else:
    print("Отрицательное число")

Когда переменная numeric положительна, печатается положительное число.

Если numeric равно 0, то выводится ноль.

Если numeric отрицательно, то печатается отрицательное число.

Вложенность операторов

Мы можем иметь оператор if…elif…else внутри другого оператора if…elif…else. Это называется вложенностью в программировании.

Любое число этих утверждений может быть вложено друг в друга. Отступ — это единственный способ определить уровень вложенности. Они могут сбить с толку, поэтому их следует избегать, если в этом нет необходимости. Вот пример:

numeric = float(input("Введите число: "))
if numeric >= 0:
    if numeric == 0:
        print("Ноль")
    else:
        print("Положительное число")
else:
    print("Отрицательное число")

Вывод программы № 1:

Введите число: 5
Положительное число

Вывод программы № 2:

Введите число: -2
Отрицательное число

Вывод программы № 3:

Введите число: 0
Ноль

Заключение

Сегодня мы рассмотрели использование операторов if, elif и else. Надеюсь я описал материал достаточно подробно, если возникают вопросы, не стесняйтесь писать их в комментариях.

На этом всё!

Егор Егоров

Программирую на Python с 2017 года. Люблю создавать контент, который помогает людям понять сложные вещи. Не представляю жизнь без непрерывного цикла обучения, спорта и чувства юмора.

Ссылка на мой github есть в шапке. Залетай.

Оцените автора
Егоров Егор
Добавить комментарий

  1. Римма

    Спасибо за информацию ! Все доступно и понятно

    Ответить
    1. Егор Егоров автор

      замечательно, пожалуйста!

      Ответить