if, else и elif являются ключевыми словами для создания условной логики в программе. Допустим, нам нужно чтобы программа вела себя по-разному в различных условиях, то для этого мы и используем условные операторы - для решения логических задач в программе.
Использование условий if и else
Предположим, мы хотим написать программу, которая определяет, является ли число четным или нечетным. Если число нечетное, мы хотим напечатать «нечетное», а если число четное, мы хотим напечатать «четное». Мы можем написать эту программу, используя ключевое слово if.
# Вводим число
n = input('Введите ваше число: ')
# Делаем его целочисленным числом
n = int(n)
# Логика для определения четного и нечетного числа
if n % 2 == 0:
print('Число четное')
if n % 2 == 1:
print('Число нечетное')
Введу число 55 и получу результат:
> Введите ваше число: 55
> Число нечетное
Введу число 24:
Введите ваше число: 24
Число четное
В приведенном выше сценарии мы устанавливаем условие n % 2, которое имеет только два возможных исхода. Либо ноль, либо единица, поэтому мы можем использовать else для второго условия.
# Вводим число
n = input('Введите ваше число: ')
# Делаем его целочисленным числом
n = int(n)
# Логика для определения четного и нечетного числа
if n % 2 == 0:
print('Число четное')
else:
print('Число нечетное')
Результат будет тот же.
Ещё один пример:
num = 4
if num == 1:
print('Один')
elif num == 2:
print('Два')
elif num == 3:
print('Три')
elif num == 4:
print('Четыре')
Результат:
> Четыре
На самом деле, if-else представляет себе мощнейший инструмент. Это были самые простые примеры выше.
Обработка нескольких условий с помощью elif
Что, если нам нужно написать программу, которая обрабатывает три или более условий? Предположим, вам нужно извлечь число из пользователя и рассмотреть эти три случая:
- Если число от 1 до 10 – выведет «маленькое».
- Если число от 11 до 20 – выведет «среднее».
- Если число от 21 до 30 – выведет «большое».
- Если число больше 30 – выведет «очень большое».
# Получаем число пользователя
num = input('Введите любое число: ')
# Приводим число к нормальному виду
num = int(num)
# Проверяем число: маленькое
if num >= 1 and num <= 10:
print('Маленькое')
# Проверяем число: среднее
elif num >=11 and num <=20:
print('Среднее')
# Проверяем число: большое
elif num >= 21 and num <= 30:
print('Большое')
# Проверяем число: очень большое
else:
print('Очень большое')
Ввожу число 25:
> Введите любое число: 25
> Большое
Заглушка pass
В теле условного оператора обязательно что-то должно быть указано. Если вы хотите пропустить какое-то условие, вы можете использовать оператор-заглушку pass.
Такой подход чаще всего используют при разработке на стадии прототипирования.
eyes = 'серые'
character = 'сложный'
if eyes == 'голубые':
print('Познакомлюсь')
elif eyes == 'серые':
if character == 'сложный':
print('Усложнить ли себе жизнь такой женой?')
else:
pass
else:
pass
С помощью таких условных операторов можно создавать огромные конструкции.