Принимаем решения: if / elif / else
Научи свою программу на Python выбирать разные пути
Главная идея: Настоящим программам нужно принимать решения. «Если идёт дождь — возьми зонт. Иначе — надень солнечные очки». В Python мы принимаем решения с помощью
if, elif и else. Программа проверяет условие (то, что либо True, либо False) и выполняет разный код в зависимости от ответа.
К концу урока ты сможешь:
- сравнивать значения с помощью
==,!=,<,>,<=,>=, - выполнять код только когда условие True с помощью
if, - задавать запасной путь через
elseи дополнительные пути черезelif, - объединять условия с
and,orиnot.
1. Сравнение значений: True или False
Сравнение задаёт вопрос «да/нет» про два значения. Python отвечает булевым значением: либо True, либо False (обрати внимание на заглавные буквы).
| Оператор | Означает | Пример | Результат |
|---|---|---|---|
== | равно | 5 == 5 | True |
!= | не равно | 5 != 3 | True |
> | больше | 5 > 8 | False |
< | меньше | 5 < 8 | True |
>= | больше или равно | 5 >= 5 | True |
<= | меньше или равно | 9 <= 5 | False |
Попробуем в настоящем коде:
age = 20
print(age >= 18)
print(age == 18)
print(age != 18)
Вывод:
True
False
True
Осторожно: одно
= присваивает значение (age = 20). Два == сравнивают (age == 20). Это не одно и то же! 2. Оператор if
Оператор if выполняет блок кода только когда его условие True. Два момента очень важны:
- Строка
ifзаканчивается двоеточием: - Код для выполнения пишется с отступом (сдвинут вправо, обычно 4 пробела). Строки с отступом находятся «внутри» if.
age = 20
if age >= 18:
print("You can vote!")
print("Program finished")
Вывод:
You can vote!
Program finished
Так как age >= 18 — это True, строка с отступом выполняется. Последняя строка без отступа, поэтому выполняется всегда. Если бы age было 10, первое сообщение пропустилось бы и появилось только "Program finished".