Условия

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

Робот-предсказатель с волшебным шаром: программа выбирает ответ в зависимости от условия

Сравнения: правда или нет

Компьютер умеет сравнивать значения и отвечать «правда» (True) или «неправда» (False). Знаки сравнения: == (равно ли), != (не равно), > (больше), < (меньше), >= и <=.

print(5 > 3)
print(2 == 2)
print(10 < 4)
True
True
False
Не путай == и =. Один знак = — «положи в коробку» (переменная). Двойной == — «равно ли?» (сравнение). В условиях всегда двойной.

if / else — программа выбирает

if проверяет условие: если оно правда — выполняется один блок, иначе (else) — другой. Строки внутри сдвигают вправо отступом (4 пробела). В конце строки с if и else ставят двоеточие.

vozrast = 14
if vozrast >= 12:
    print("Тебе можно на этот аттракцион!")
else:
    print("Подрасти ещё немножко.")
Тебе можно на этот аттракцион!
  if/else — развилка: одно условие, два пути

              vozrast >= 12 ?
               /          \
          да  /            \  нет
             v              v
     "можно на          "подрасти
      аттракцион"         ещё"
Отступ (4 пробела) показывает, что строка — внутри if или else. Без отступа Python выдаст ошибку. И не забудь двоеточие в конце строки с условием.

elif — несколько вариантов

Когда вариантов больше двух, между if и else добавляют elif («иначе если»). Условия проверяются сверху вниз, и срабатывает первое подходящее.

ball = 4
if ball == 5:
    print("Отлично!")
elif ball == 4:
    print("Хорошо!")
elif ball == 3:
    print("Нормально")
else:
    print("Бывает, подтянись")
Хорошо!
  elif — лесенка вариантов (проверка сверху вниз):

   if   ball == 5   -->  "Отлично!"
   elif ball == 4   -->  "Хорошо!"
   elif ball == 3   -->  "Нормально"
   else             -->  "Подтянись"

   Срабатывает ПЕРВОЕ подходящее условие, остальные пропускаются.

Несколько условий сразу: and, or

Иногда важно проверить сразу два условия. and («и») — правда, только если верны ОБА. or («или») — правда, если верно ХОТЯ БЫ ОДНО.

vozrast = 13
if vozrast >= 12 and vozrast <= 15:
    print("Ты подросток!")

if vozrast < 7 or vozrast > 65:
    print("Льготный билет")
else:
    print("Обычный билет")
Ты подросток!
Обычный билет
  and — нужны ОБА        |   or — хватит ОДНОГО
  ---------------------- | ----------------------
  True  and True  = True  |  True  or False = True
  True  and False = False |  False or False = False
  False and False = False |  False or True  = True
Подсказка-память: and строгий — придирается к обоим условиям; or добрый — рад любому одному.

Упражнение: бот-предсказатель

Скопируй программу и запусти. Загадай вопрос, введи число от 1 до 3 — бот выдаст предсказание. Это твой выбор решает, что он ответит.

# Бот-предсказатель
print("Загадай вопрос и введи число от 1 до 3:")
chislo = int(input("Твоё число: "))

if chislo == 1:
    print("Предсказание: тебя ждёт удача!")
elif chislo == 2:
    print("Предсказание: будь сегодня внимателен.")
else:
    print("Предсказание: впереди приятный сюрприз!")
Загадай вопрос и введи число от 1 до 3:
Твоё число: 2
Предсказание: будь сегодня внимателен.
  • Поменяй предсказания на свои — смешные или серьёзные.
  • Добавь ещё один вариант: вставь новую ветку elif chislo == 4: и расширь диапазон до 1–4.
  • Сделай проверку «своих» чисел через and: if chislo == 7 or chislo == 13: — особое предсказание для счастливого числа.
Хочешь, чтобы бот предсказывал случайно, как настоящий магический шар? Это уже в следующем разделе — там подключим случайность.

Контрольный вопрос. Ты хочешь проверить в условии, равно ли число пяти. Какой знак нужен?

А== — двойное равно, это сравнение «равно ли?»
Б= — одинарное равно
В=> — стрелка вправо

Подсказка: Один знак = кладёт значение в переменную. Для сравнения «равно ли» нужен другой знак.

Онлайн-проверка ответа появится позже

Контрольный вопрос. Что выведет программа из этого задания? Впиши True или False.

Исходный код для этого задания:

print(7 >= 7)

Подсказка: >= это «больше или равно». 7 равно 7 — значит условие «больше или равно» выполнено.

Онлайн-проверка ответа появится позже

Контрольный вопрос. Что выведет программа из этого задания? Впиши True или False.

Исходный код для этого задания:

print(5 != 5)

Подсказка: != это «не равно». Равно ли 5 пяти? Значит «не равно» — это…

Онлайн-проверка ответа появится позже

Контрольный вопрос. Что выведет программа из этого задания? Впиши True или False.

Исходный код для этого задания:

ball = 4
print(ball >= 4 and ball <= 5)

Подсказка: and — правда, только если ОБА условия верны. Проверь каждое: 4>=4 и 4<=5.

Онлайн-проверка ответа появится позже

Контрольный вопрос. Что выведет программа из этого задания? Впиши True или False.

Исходный код для этого задания:

print(5 > 9 or 2 < 3)

Подсказка: or — правда, если верно ХОТЯ БЫ одно. 5>9 — неправда, а 2<3 — ?

Онлайн-проверка ответа появится позже

Контрольный вопрос. Что выведет на экран программа из этого задания? Впиши слово, которое появится (без кавычек).

Исходный код для этого задания:

ball = 3
if ball == 5:
    print("Отлично")
elif ball == 3:
    print("Нормально")
else:
    print("Подтянись")

Подсказка: Условия проверяются сверху вниз. ball равно 3 — найди ветку, где условие станет правдой.

Онлайн-проверка ответа появится позже

Задание. Допиши программу. В ветке else не хватает ответа. Напиши команду print, которая выведет ровно: Не грусти, всё наладится!

Исходный код для этого задания:

nastroenie = "грустно"
if nastroenie == "весело":
    print("Отлично, так держать!")
else:
    # напиши тут команду print со словами: Не грусти, всё наладится!

Подсказка: Шаблон: print(«…текст…»). Текст в кавычках должен быть точно: Не грусти, всё наладится!

✅ Готово, если: ты ввёл(а) верный ответ, и онлайн-проверка его приняла.

Онлайн-проверка ответа появится позже

Задание. Допиши недостающее ключевое слово вместо ___. Нужно проверить ещё одно условие между if и else («иначе если»). Впиши только это слово.

Исходный код для этого задания:

if ball == 5:
    print("Отлично")
___ ball == 4:
    print("Хорошо")
else:
    print("Бывает")

Подсказка: Это слово означает «иначе если» и стоит между if и else. Состоит из 4 букв.

✅ Готово, если: ты ввёл(а) верный ответ, и онлайн-проверка его приняла.

Онлайн-проверка ответа появится позже

Контрольный вопрос. Программа из этого задания падает с ошибкой в строке с if. Что не так?

Исходный код для этого задания:

vozrast = 14
if vozrast = 12:
    print("Ровно 12")
АВ условии стоит одинарное = вместо двойного == — для сравнения нужно ==
БПеред if не хватает команды print
Вvozrast нельзя сравнивать с числом

Подсказка: Сравнение «равно ли» пишут двойным знаком. Один знак = это присваивание, в условии так нельзя.

Онлайн-проверка ответа появится позже

Что дальше

Теперь твои программы умеют принимать решения — сравнивать, ветвиться через if/elif/else и проверять сразу несколько условий с and/or. И ты потренировался на каждом приёме. В следующем разделе добавим случайность командой random и соберём первую настоящую игру — «Угадай число».

Назад  ·  ↑ В начало урока  ·  ⌂ В начало курса  ·  Вперёд →

Школа Виктора Комлева