Дата обновления: 01 Февраля 2024
26.07.2023
1592
9.5 мин
author-avatar
Анна Уженкова

Условный оператор в Python — что это и как его использовать

Условные конструкции — важные составные части кода. Они нужны, чтобы выполнять определённые условия — отсюда и такое название. В программировании есть разные фишки для упрощения работы, её оптимизации. Но условные операторы — это база, которую нужно знать, чтобы писать код на любом из языков программирования. В статье раскроем особенности условных операторов в Python — что это такое, какие типы операторов по функциям существуют и как именно их используют на примерах частей кода.

Что такое условные операторы в Python

В Питоне существует 3 вида условных операторов — if, if-else, if-elif-else. Каждый их них выполняет свою функцию, но их объединяет одно. Условный оператор позволяет писать код таким образом, чтобы выполнялись обозначенные условия. Самый простой пример использования условного оператора:

if 10 > 5:

    print(‘Правильно, 10 больше, чем 5.’) 

Правильно, 10 больше, чем 5.

Операция if здесь помогает выполнить блок кода по условию — если оно истинно (когда Python рассматривает его как True), код блока данных будет исполнен, если есть ошибка (False), то исполнения не будет. Вот простой пример программы False, попробуйте ввести и его:

if 10< 5: 

    print(‘Правильно, 5 больше 10’)

Мы не получим ответ потому, что условие ложно. Введённую надпись «Правильно, 5 больше 10» не получится вывести на экран. 

Оператор if языка Python выбирает действия для выполнения. Вместе с эквивалентом в виде выражения он является основным инструментом выбора и представляет большой объём логики, которой обладает Питон. Этот составной оператор способен содержать и другие более сложные операторы. Существуют также операторы циклов — например, for, while. Подробнее рассмотрим каждый из существующих условных операторов на простых примерах.

Девушка смотрит в ноутбук с кодом

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

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

if condition:

 <indented statement 1> 

<indented statement 2> 

<non-indented statement>

Первая строчка — это условие if, а condition — выражение, которое нужно определить как верное или неверное, после него нужно поставить двоеточие. Следующие строки являются блоками из инструкций. Там может быть лишь одна инструкция или несколько — зависит от формулировки запроса и его сложности.

В блоке if каждая из инструкций имеет одинаковый отступ от if — она равняется четырём пробелам. В Java, PHP и C++, например, используются фигурные скобки для обозначения начала и конца. В Python в каждой из инструкций должно содержаться одинаковое количество пробелов — если зависимость нарушить, программа вернёт вам синтаксическую ошибку данных.

Примеры значения if:

a =5

if a =5:

    print(«stay»)

stay

a = 350 

 if a > 10: 

    print(«a больше чем 10») 

a больше чем 10

Изучите Python с помощью онлайн-курсов. На них вы не только научитесь писать код, но и разберётесь в синтаксисе языка, а также сможете пройти стажировку в понравившейся компании. Интересные варианты с сайта tutortop:

Мы дарим 10 000 ₽ на обучение в любой из школ-партнёров. При покупке через tutortop вы также получите курсы стоимостью 20 000 ₽ абсолютно бесплатно. 

Курс в подарок!

Получите онлайн-курсы стоимостью 20 000 ₽ абсолютно бесплатно и промокод 10 000 ₽ на обучение.

Нажимая на кнопку «Получить», я соглашаюсь на обработку моих персональных данных.

Спасибо! Мы получили вашу заявку. Скоро с вами свяжемся.

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

Эту конструкцию используют в тех типах программ, когда нужно предусмотреть несколько вариантов для решения. При истинном условии необходимо выполнить один набор инструкций, при ложном — другой. Здесь мы используем сразу два блока данных. 

Синтаксис if-else по строкам:

if condition: 

# блок if 

statement 1 

statement 2 

on

else: 

# блок else 

statement 3 s

statement 4 

on

Как он работает? При исполнении if-else выполняется проверка условия — если оно возвращается верным, тогда исполняется инструкции в блоке if. Но если возвращается неверное, случается исполнение всех инструкций в блоке else. Важно, чтобы условия if и else находились на одном уровне. Иначе будет выводить ошибку.

Простые примеры:

a = 10

if a > 5:

   print(«Р»)

else:

   print(«L»)

P

или значение переменной:

num=2

if num >= 0: 

    print(«Число больше либо равно 0»)

 else: 

     print(«Отрицательное число»)

#Вывод Число больше либо равно 0

Пример с паролем:

password = input(«12dfrt») 

if password = «12dfrt»: 

    print(«Добро пожаловать») 

else: 

    print(«Доступ запрещен»)

# Вывод Добро пожаловать

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

Руки на клавиатуре

Конструкция if – elif – else в Python

Множественное ветвление на одном уровне вложенности в Python реализуется с помощью веток elif. Слово «elif» образовано от двух первых букв слова «else», к которым присоединено слово «if». Это можно перевести как «иначе если». При выборе из нескольких вариантов всегда можно использовать основу if – elif – else. Этот условный оператор позволяет проверять несколько условий, вместо того чтобы писать вложенные if-else. Синтаксис elif в Python может выглядеть так:

if condition_1: 

# блок if 

statement 

more statement 

elif 

condition_2: 

# первый блок elif 

statement 

more statement 

elif 

condition_3: 

# второй блок elif 

statement 

more statement … 

else — необязательный блок

statement statement 

more statement

Вы интересуетесь основами программирования и хотите больше знать о мире IT? Читайте статьи из нашего блога на эту тему:

Удобнее запомнить, что значит каждый из условных операторов, какую функцию выполняет. Для себя их можно обозначить так: if — «если», elif — «а если», else — «в ином случае». Из синтаксисов описанный выше — самый сложный из-за своей многосоставности. Он работает так: при исполнении if-elif-else сначала проверяется первое условие или condition_1. Если True, исполняется блок инструкций if. Все следующие условия и инструкции пропускаются — в дело вступают операторы вне if-elif-else. В случае, когда condition_1 оказывается ложным, управление переходит к следующему условию elif. Проходит проверка condition_2. Если True, исполняются инструкции первого блока elif. 

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

Пример 1:

x=’killer rabbit’

if x=’roger’:

    print(«shave and a haircut»)

elif x=’bugs’:

    print(«what’s up doc?»)

else:

    print(‘Run away!Run away!’)

#Run away!Run away!

Пример 2:

number = 5

if number > 2:

    print(«Число больше чем 2.»)

elif number < 2:  

    print(«Число меньше чем 2»)

else: 

    print(«Число равно двум.»)

#Число больше чем 2

Пример 3:

shinobi = ‘Naruto’

if shinobi == ‘Orochimaru’:

    print(‘fushi tensei’)

elif shinobi == ‘Naruto’:

    print(‘RASENGAN’)

elif shinobi == ‘Sasuke’:

    print(‘chidori’)

#RASENGAN

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

Мужчина в синем свитере смотрит в ноутбук

Вложенные операторы в Python

Как мы уже упомянули выше, операторы if-else можно использовать внутри других инструкций if или if-else. Вложенные условия также регулируются отступами. Пример, где оператор if используется внутри другого if-оператора:

gre_score = 160

per_grad =  60

if per_grad > 70: 

    # внешний блок if 

    if gre_score > 150: 

        # внутренний блок if  

        print(«Вы можете получить кредит») 

else: 

    print(«Извините, вы не имеете права на кредит»)

#Извините, вы не имеете права на кредит

Вы можете включать инструкцию if-else внутрь другого оператора if в Python:

per_grad = 80

gre_score = 180

if per_grad > 70: 

    if gre_score > 150: 

        print(«Вы можете взять кредит») 

    else: 

        print(«У вас низкий кредитный лимит») 

else: 

    print(«Извините, вы не можете получить кредит»)

Большая вложенность в Python — это не всегда хорошо, у неё есть и недостатки. Например, становится трудно найти, где заканчивается определённый блок, а  код становится менее читаемым и сложным для понимания. Ещё, возможно, придётся прокручивать окно редактора по горизонтали. Чтобы избежать проблем с большой вложенностью, стоит отказаться от использования оператора else.

Хочу стать Python-разработчиком!
Специально для вас мы собрали отдельную подборку лучших онлайн-курсов по Python на рынке и сравнили их по цене, продолжительности и отзывам студентов.
Посмотреть подборку