Python Условные операторы: IF…Else, ELIF и Switch Case.

⚡ Умное резюме

Python Условные операторы направляют поток выполнения программы, выполняя определенные блоки кода только тогда, когда логические выражения оцениваются как истинные. К ним относятся операторы if, else, elif, вложенные if, тернарный оператор и структурное сопоставление с образцом для создания четкой, управляемой принятием решений логики.

  • Основная концепция: В условном операторе if блок кода с отступом выполняется только тогда, когда условие истинно, что и является основой для принятия решений. Python.
  • Варианты обработки: Добавьте else для резервного варианта и elif для последовательной проверки дополнительных условий без глубокой вложенности.
  • Избегайте логических ошибок: Используйте единую цепочку if-elif-else вместо независимых операторов if, когда должен быть достигнут ровно один результат.
  • Пишите кратко. Code: Для присвоения значения в одной читаемой строке используйте тернарное выражение value_if_true, если условие выполняется, иначе используйте value_if_false.
  • Современное ветвление: Замените длинные цепочки elif на карту словаря.ping или оператор match case, введенный в Python 3.10 для более удобного многофакторного выбора.

Python Условные заявления

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

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

Что такое Python Если заявление?

Python если заявление Используется для принятия решений. Он содержит код, который выполняется только тогда, когда условие, заданное в операторе if, истинно. Если условие ложно, вместо него выполняется необязательный оператор else, содержащий код для условия else. Когда вы хотите выполнить действие по одному условию, в то время как другое условие неверно, вы используете Python оператор если-иначе.

Python Синтаксис оператора if:

if expression:
    statement
else:
    statement

Python если…иначе

Python блок-схема if…else, показывающая ветви true и false.

Приведенная выше блок-схема показывает, как осуществляется управление в операторе if-else. Рассмотрим пример. Python Оператор if-else на практике:

Python Пример вывода оператора if в редакторе

# Example file for working with conditional statements
def main():
    x, y = 2, 8
    if(x < y):
        st = "x is less than y"
    print(st)

if __name__ == "__main__":
    main()
  • Code Линия 3: Мы определяем две переменные x, y = 2, 8.
  • Code Линия 4: Оператор if проверяет условие x < y, которое выполняется следующим образом: Правда в этом случае.
  • Code Линия 5: Переменной st присваивается значение «x меньше y».
  • Code Линия 6: Строка print(st) выводит значение st, которое равно «x меньше y».

Что происходит, когда условие «если» не выполняется?

Основываясь на предыдущем примере, давайте посмотрим, что произойдет, когда условие if в Python Если условие не выполняется, и ветка else отсутствует, отступленный код полностью пропускается.

Python ошибка, если условие if не выполняется

# Example file for working with conditional statements
def main():
    x, y = 8, 4
    if(x < y):
        st = "x is less than y"
    print(st)

if __name__ == "__main__":
    main()
  • Code Линия 3: Мы определяем две переменные x, y = 8, 4.
  • Code Линия 4: Оператор if проверяет условие x < y, которое выполняется следующим образом: Ложь в этом случае.
  • Code Линия 5: Переменная st — это НЕ установлено значение «x меньше y».
  • Code Линия 6: Строка print(st) пытается вывести на экран переменную, которая никогда не была объявлена, поэтому Python поднимает вопрос ИмяОррор.
⚠ Предупреждение: Распространенная ошибка начинающих — обращение к переменной, значение которой присваивается только внутри блока if. Либо используйте ветку else, либо задайте переменной значение по умолчанию перед оператором if.

Как использовать условие «else»

Чтобы избежать указанной выше ошибки, можно добавить условие else. Условие else используется, когда необходимо оценить одно утверждение на основе другого. Если одно условие ложно, блок else предоставляет альтернативный путь, поэтому программа все равно выдаст результат.

Это критически важно для анализа и выбора наиболее эффективных ключевых слов для улучшения рейтинга вашего сайта.

Python Пример условия if-else

# Example file for working with conditional statements
def main():
    x, y = 8, 4
    if(x < y):
        st = "x is less than y"
    else:
        st = "x is greater than y"
    print(st)

if __name__ == "__main__":
    main()
  • Code Линия 3: Мы определяем две переменные x, y = 8, 4.
  • Code Линия 4: Оператор if проверяет условие x < y, которое выполняется следующим образом: Ложь в этом случае.
  • Code Линия 6: Управление выполнением программы переходит к условию else.
  • Code Линия 7: Переменная st имеет значение «x — это большой чем ты».
  • Code Линия 8: Строка print(st) выводит значение st, которое равно «x больше y».

Когда условие «else» не работает

Условие else не всегда даст желаемый результат. Оно может вывести неверный результат, если в логике программы есть ошибка. Обычно это происходит, когда в программе нужно обосновать более двух операторов или условий. Пример поможет вам понять эту концепцию.

Здесь обе переменные одинаковы (8, 8), однако вывод программы следующий: «x больше y», который НЕПРАВИЛЬНОЭто происходит потому, что программа проверяет первое условие (условие if), и если оно не выполняется, то выводит второе условие (условие else) в качестве значения по умолчанию. На следующем шаге мы рассмотрим, как исправить эту ошибку.

Python В противном случае условие приводит к неправильному результату

# Example file for working with conditional statements
def main():
    x, y = 8, 8
    if(x < y):
        st = "x is less than y"
    else:
        st = "x is greater than y"
    print(st)

if __name__ == "__main__":
    main()

Как использовать условие «elif»

Для исправления предыдущей ошибки, допущенной условием else, мы можем использовать Элиф Оператор `elif`. Используя условие `elif`, вы указываете программе проверить третью возможность, если первое условие ложно. Вы можете объединять несколько условий `elif` для проверки четвертой, пятой и последующих возможностей в вашем коде.

Это критически важно для анализа и выбора наиболее эффективных ключевых слов для улучшения рейтинга вашего сайта.

Python пример условия elif

# Example file for working with conditional statements
def main():
    x, y = 8, 8
    if(x < y):
        st = "x is less than y"
    elif(x == y):
        st = "x is same as y"
    else:
        st = "x is greater than y"
    print(st)

if __name__ == "__main__":
    main()
  • Code Линия 3: Мы определяем две переменные x, y = 8, 8.
  • Code Линия 4: Оператор if проверяет условие x < y, которое выполняется следующим образом: Ложь в этом случае.
  • Code Линия 6: Управление программой переходит к условию elif. Оно проверяет, равно ли x и y, что является истинным.
  • Code Линия 7: Переменная st имеет значение «x — это так же, как y. "
  • Code Линия 10: Программа выходит из оператора if (она не дойдёт до оператора else) и выводит st. Результат — «x совпадает с y», что правильно.

Как выполнить условное выражение с минимальным количеством кода Code

Теперь, когда вы можете писать полноценные блоки if-elif-else, Python позволяет свести простое условие к одной строке. Вместо написания отдельного кода для каждой ветви, вы можете использовать тройное (условное) выражение.

Синтаксис:

value_if_true if condition else value_if_false

Это критически важно для анализа и выбора наиболее эффективных ключевых слов для улучшения рейтинга вашего сайта.

Python Пример однострочного тернарного условного оператора

def main():
    x, y = 10, 8
    st = "x is less than y" if (x < y) else "x is greater than or equal to y"
    print(st)

if __name__ == "__main__":
    main()
  • Code Линия 2: Мы определяем две переменные x, y = 10, 8.
  • Code Линия 3: Переменная st принимает значение «x меньше y», если x < y; в противном случае она становится «x больше или равно y». Поскольку в данном случае x > y, st становится вторым значением.
  • Code Линия 4: Выводит значение переменной st и дает правильный результат.

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

Вложенный оператор if помещает один оператор if внутрь другого, что полезно, когда решение зависит от второго условия. Следующий пример демонстрирует вложенный оператор if в Python который рассчитывает корабльping Стоимость рассчитывается исходя из страны и общей суммы заказа.

total = 100
# country = "US"
country = "AU"

if country == "US":
    if total <= 50:
        print("Shipping Cost is $50")
    elif total <= 100:
        print("Shipping Cost is $25")
    elif total <= 150:
        print("Shipping Cost is $5")
    else:
        print("FREE")

if country == "AU":
    if total <= 50:
        print("Shipping Cost is $100")
    else:
        print("FREE")

Раскомментируйте строку 2 в приведенном выше коде, закомментируйте строку 3 и запустите код снова, чтобы увидеть, как изменится вывод для другой страны.

Оператор Switch Case в Python

Что такое оператор switch?

Оператор switch — это многосторонний оператор ветвления, который сравнивает значение переменной со значениями, указанными в операторах case. В течение многих лет Python В языке программирования не было оператора switch, поэтому разработчики реализовали аналогичное поведение с помощью Python словарь картаping.

Пример использования карты словаряping:

def switch_example(argument):
    switcher = {
        0: "This is Case Zero",
        1: "This is Case One",
        2: "This is Case Two",
    }
    return switcher.get(argument, "nothing")

if __name__ == "__main__":
    argument = 1
    print(switch_example(argument))

Замените чехол спичкой (Python 3.10 и Later)

С Python 3.10 (выпущен в октябре 2021 года), Python предоставляет собственный случай матча Этот оператор известен как структурное сопоставление с образцом. Он предлагает понятную и читаемую альтернативу длинным цепочкам операторов elif и описанному выше словарному подходу.

def switch_example(argument):
    match argument:
        case 0:
            return "This is Case Zero"
        case 1:
            return "This is Case One"
        case 2:
            return "This is Case Two"
        case _:
            return "nothing"

if __name__ == "__main__":
    print(switch_example(1))

Подчеркивание (_) выступает в качестве варианта по умолчанию, соответствующего любому значению, не обработанному предыдущими вариантами, подобно варианту по умолчанию в традиционном операторе switch.

✅ Совет: Используйте спичечный коробок, если вы находитесь в... Python 3.10 или новее. Для более старых версий — карта словаря.ping остается стандартным способом имитации оператора switch.

if, elif и else: краткое сравнение

Используйте это сравнение, чтобы определить, какая условная структура соответствует вашей логике принятия решений.

заявлениеЦельКогда использовать
ifВыполняет блок кода, когда выполняется условие.Однозначное решение «да/нет».
если ещеПредоставляет резервный вариант на случай, если условие ложно.Два взаимоисключающих результата
ЭлифПроверяет дополнительные условия последовательно.Три или более возможностей
Вложенный, еслипомещает условие if внутрь другого условия if.Решение, зависящее от второго условия.
троичныйСводит конструкцию if-else в одну строку.Простое присвоение значений
случай матчаСопоставляет значение со множеством шаблонов.Многостороннее ветвление (Python 3.10 +)
⚠ Примечание: Python Срок службы двух из них истек 1 января 2020 года, и во всех примерах в этой статье используются Python 3 синтаксиса. В Python 2. print — это оператор (например, print st), а не функция, поэтому приведенный выше код не будет работать без изменений. Python 2.

Часто задаваемые вопросы (FAQ)

Оператор if инициирует принятие решения и всегда выполняется. Оператор elif (else-if) проверяется только тогда, когда предшествующие условия if или elif ложны, что позволяет проверить несколько вариантов в одной цепочке, пока выполняется ровно один блок.

Да. С Python В версии 3.10 оператор match-case обеспечивает ветвление в стиле switch за счет сопоставления со структурным шаблоном. В более старых версиях разработчики имитируют switch с помощью словаря map.ping с помощью метода get() для указания значения по умолчанию.

Используйте тернарное выражение: value_if_true, если условие истинно, иначе value_if_false. Например, st = “low”, если x < 10, иначе “high” присваивает значение в одной читаемой строке без полного блока if-else.

Да. Искусственный интеллект, помогающий программировать, может генерировать, объяснять и отлаживать логику if-elif-else на основе подсказки на простом языке. Они полезны для обучения, но вам все равно следует проверить вывод, чтобы убедиться, что условия и отступы соответствуют вашей предполагаемой логике.

Да. Условная логика является основополагающей для ИИ. Деревья решений, системы, основанные на правилах, и конвейеры предварительной обработки данных — все они используют ветвления типа «если-иначе» для выбора действий, фильтрации данных и управления тем, как модель обрабатывает различные входные данные.

Подведем итог этой публикации следующим образом: