Python: Условные операторы

Принимаем решения в программах с помощью if, elif и else

Условные операторы в Python

Условные операторы позволяют программе принимать решения и выполнять разные действия в зависимости от условий.

Оператор if (если)

Блок кода после оператора if выполняется только если условие истинно (True).

Блок-схема условного оператора
# Простой пример if
age = 15

if age >= 12:
    print("Добро пожаловать в курс Python для 12-14 лет!")

print("Программа завершена")
Добро пожаловать в курс Python для 12-14 лет!
Программа завершена
Обратите внимание: В Python важны отступы! Код, который должен выполняться при истинном условии, пишется с отступом в 4 пробела.

Операторы else (иначе) и elif (иначе если)

else позволяет выполнить код, если условие в if ложно (False).
elif (сокращение от "else if") позволяет проверять дополнительные условия.

# Пример с else и elif
score = 85

if score >= 90:
    print("Отличная работа! Оценка 5")
elif score >= 70:
    print("Хорошо! Оценка 4")
elif score >= 50:
    print("Удовлетворительно. Оценка 3")
else:
    print("Нужно подтянуть знания. Оценка 2")

print("Проверка завершена")
Хорошо! Оценка 4
Проверка завершена

Операторы сравнения

В условиях можно использовать различные операторы сравнения:

Оператор Значение Пример Результат
== равно 5 == 5 True
!= не равно 5 != 3 True
> больше 5 > 3 True
< меньше 5 < 3 False
>= больше или равно 5 >= 5 True
<= меньше или равно 5 <= 3 False
# Примеры операторов сравнения
x = 10
y = 7

if x > y:
    print("x больше y")
    
if x != y:
    print("x не равно y")
    
if x % 2 == 0:
    print("x четное число")
x больше y
x не равно y
x четное число

Логические операторы

Для создания сложных условий используются логические операторы:

Оператор Значение Пример Результат
and И (оба условия истинны) (5 > 3) and (2 < 4) True
or ИЛИ (хотя бы одно условие истинно) (5 > 3) or (2 > 4) True
not НЕ (инвертирует условие) not (5 > 3) False
# Примеры логических операторов
age = 13
grade = 8

if age >= 12 and grade >= 5:
    print("Доступ разрешен")
    
if age < 10 or age > 15:
    print("Не подходящий возраст")
    
if not (age == 12):
    print("Вам не 12 лет")
Доступ разрешен
Вам не 12 лет

Практические задания

Задание 1: Проверка числа

Напишите программу, которая запрашивает у пользователя число и выводит:
- "Четное положительное", если число четное и больше 0
- "Нечетное положительное", если число нечетное и больше 0
- "Четное отрицательное", если число четное и меньше 0
- "Нечетное отрицательное", если число нечетное и меньше 0
- "Это ноль", если число равно 0

num = int(input("Введите число: "))

if num == 0:
    print("Это ноль")
elif num > 0:
    if num % 2 == 0:
        print("Четное положительное")
    else:
        print("Нечетное положительное")
else:
    if num % 2 == 0:
        print("Четное отрицательное")
    else:
        print("Нечетное отрицательное")

Задание 2: Калькулятор ИМТ

Напишите программу, которая вычисляет индекс массы тела (ИМТ = вес / рост²) и выводит:
- "Недостаточный вес", если ИМТ < 18.5
- "Нормальный вес", если 18.5 ≤ ИМТ < 25
- "Избыточный вес", если 25 ≤ ИМТ < 30
- "Ожирение", если ИМТ ≥ 30

weight = float(input("Введите ваш вес (кг): "))
height = float(input("Введите ваш рост (м): "))

bmi = weight / (height ** 2)

if bmi < 18.5:
    print(f"ИМТ: {bmi:.1f} - Недостаточный вес")
elif 18.5 <= bmi < 25:
    print(f"ИМТ: {bmi:.1f} - Нормальный вес")
elif 25 <= bmi < 30:
    print(f"ИМТ: {bmi:.1f} - Избыточный вес")
else:
    print(f"ИМТ: {bmi:.1f} - Ожирение")

Задание 3: Проверка треугольника

Напишите программу, которая запрашивает длины трех сторон и определяет:
- Может ли существовать треугольник с такими сторонами (сумма любых двух сторон больше третьей)
- Является ли треугольник равносторонним (все стороны равны)
- Является ли треугольник равнобедренным (две стороны равны)
- Является ли треугольник разносторонним (все стороны разные)

a = float(input("Введите первую сторону: "))
b = float(input("Введите вторую сторону: "))
c = float(input("Введите третью сторону: "))

if a + b > c and a + c > b and b + c > a:
    print("Треугольник существует")
    
    if a == b == c:
        print("Треугольник равносторонний")
    elif a == b or a == c or b == c:
        print("Треугольник равнобедренный")
    else:
        print("Треугольник разносторонний")
else:
    print("Треугольник не существует")

Материалы урока

  • Операторы if, elif, else
  • Операторы сравнения
  • Логические операторы
  • Вложенные условия
Бесплатный урок
Записаться на курс

Следующий урок

Циклы в Python

Изучаем for для повторения действий

Перейти