1 Как программа принимает решения: команды if и else
В простых программах команды выполнялись подряд сверху вниз (линейный алгоритм). Но в жизни мы постоянно делаем выбор: «ЕСЛИ на улице дождь — берем зонт, ИНАЧЕ идем налегке».
В программировании для этого используется условная инструкция:
if— переводится как «ЕСЛИ» (проверяет условие);else:— переводится как «ИНАЧЕ» (выполняется, когда условие не сработало).
x = int(input())
if x > 0:
print(x) # Если число положительное
else:
print(-x) # Иначе меняем знак на противоположный
x = int(input())
if x < 0:
x = -x # Делаем число положительным только если оно было меньше 0
print(x) # Напечатается ВСЕГДА, так как строка стоит без отступа!
2 Закон отступов в Python (Правило 4 пробелов)
В других языках (Паскаль или C++) границы условий пишут словами begin... end или скобками {}.
В Python создатели сделали язык максимально чистым и красивым: принадлежность команды к условию определяется ОТСТУПОМ от левого края!
- Все команды, которые должны выполниться внутри
ifилиelse, сдвигаются вправо на 4 пробела. - Среда IDLE в Windows делает этот отступ автоматически, когда вы нажимаете Enter после двоеточия
:! - Не забывайте ставить двоеточие
:в конце строки сifиelse!
3 Операторы сравнения и двойные неравенства
В условии проверяются математические соотношения. Запомните, как они пишутся на клавиатуре:
| Знак в Python | Значение | Пример | Результат при x = 5 |
|---|---|---|---|
< |
Меньше | x < 10 |
True (Истина) |
> |
Больше | x > 10 |
False (Ложь) |
<= |
Меньше или равно | x <= 5 |
True (Истина) |
>= |
Больше или равно | x >= 7 |
False (Ложь) |
== |
Равно (два знака «равно» подряд == без пробела) |
x == 5 |
True (Истина) |
!= |
Не равно (восклицательный знак и знак равно !=) |
x != 5 |
False (Ложь) |
- Не равно: пишется как два символа
!=(восклицательный знак и равно подряд). В коде никогда не ставится математический знак ≠! - Проверка равенства: пишется как два знака равно
==подряд. Один знак=— это присваивание числа в переменную!
Чтобы проверить, что число
x лежит от 1 до 10, можно написать прямо как на математике:
1 <= x <= 10.
4 Логические операторы: and (И), or (ИЛИ), not (НЕ)
Когда нужно проверить сразу несколько условий одновременно, нам помогают английские слова-связки:
Оператор and (Логическое И)
Дает True, только если ОБА условия верны одновременно.
5 > 0 and 5 < 10 ➔ True5 > 0 and 5 > 100 ➔ False
Оператор or (Логическое ИЛИ)
Дает True, если верен ХОТЯ БЫ ОДИН из вариантов.
x == 5 or y == 5 ➔ True (если хоть один равен 5)
Оператор not (Отрицание НЕ)
Переворачивает ответ: правду делает ложью, а ложь — правдой.
not (5 < 0) ➔ Truenot True ➔ False
• Число
n четное: n % 2 == 0 (остаток от деления на 2 равен нулю);• Число оканчивается на ноль:
n % 10 == 0;• Число двузначное:
10 <= n <= 99.
5 Каскадные условные инструкции: if ... elif ... else
А что делать, если вариантов ответа не 2, а 3, 4 или больше? Например: оценка 5 (отлично), 4 (хорошо), 3 (удовлетворительно) или 2.
Для этого в Python используется ключевое слово elif (сокращение от else if — «иначе если»).
x = int(input())
y = int(input())
if x > 0 and y > 0:
print("Первая четверть")
elif x > 0 and y < 0:
print("Четвертая четверть")
elif y > 0:
print("Вторая четверть")
else:
print("Третья четверть")
6 Интерактивный симулятор: Координатная плоскость и ветвления
Кликните мышкой в любое место координатной плоскости. Симулятор мгновенно покажет, какое именно условие if или elif сработает в программе!
7 Тест для 7 класса: Ветвления и логика (10 вопросов)
Проверьте свою внимательность! Нажимайте на варианты ответов — все кнопки интерактивны.
if и else?if?a и b?n является четным?(5 > 2) and (10 < 3)?(5 > 2) or (10 < 3)?x = 3
if x > 0:
print('Да')
print('Конец')?