Условные операторы позволяют проверять условия и выполнять различные участки кода в зависимости от результата проверки. В Python это реализовано просто.
Основы условных операторов
Ключевое слово if запускает условный оператор. За ним следует условие, проверяемое на истинность (True) или ложь (False). Если условие истинно, выполняется код с отступом после двоеточия (:).
Например, условие 1 всегда истинно, так как в Python число 1 эквивалентно True. Тип данных bool принимает значения 0 (False) и 1 (True).
if 1:
print('True')
В отличие от других языков, в Python тело условного оператора определяется отступом: все строки с одинаковым отступом после двоеточия принадлежат оператору.
if 1:
print('True')
print('All is ok')
Этот код выведет «True» и «All is ok». Если вместо 1 поставить 0, ничего не выведется.
Проверка переменных
Условные операторы позволяют проверять переменные. Например, можно запросить имя пользователя и сравнить его с заданным значением.
name = input('Введите ваше имя: ')
if name == 'test':
print('True')
Здесь == — оператор равенства. Ввод «test» приведёт к выводу «True», а любой другой — к отсутствию вывода.
Операторы сравнения
Существуют следующие операторы сравнения:
- > (больше)
- < (меньше)
- >= (больше или равно)
- <= (меньше или равно)
- != (не равно)
Преобразование типов
Функция input() возвращает строку. Для сравнения со числом, нужно преобразовать строку в число с помощью int().
num = int(input('Введите число: '))
if num > 0:
print('Число больше 0')
Без преобразования сравнение строки с числом вызовет ошибку.
Операторы elif и else
elif (иначе если) позволяет добавить несколько условий. Он проверяется, если предыдущие условия ложны. else (иначе) выполняется, если ни одно из предыдущих условий не выполнилось.
num = int(input('Введите число: '))
if num > 0:
print('Число больше 0')
elif num < -10:
print('Число меньше -10')
else:
print('Число находится в диапазоне [-10; 0]')
elif и else могут использоваться многократно, но else только один. Они не могут существовать без if.
Вложенные условные операторы
Условные операторы можно вкладывать:
num = int(input('Введите число: '))
if num > 0:
if num > 10:
print('Число больше 10')
else:
print('Число меньше 10 и больше 0')
Сокращённая форма
Существует сокращённая форма:
name = input('Введите имя: ')
result = 'yes' if name != 'test' else 'no'
print(result)
result примет значение ‘yes’, если name не равно ‘test’, и ‘no’ в противном случае.
Условные операторы — фундаментальный элемент программирования. Понимание их работы необходимо для создания программ, реагирующих на различные ситуации и обрабатывающих данные по-разному. Практика поможет лучше усвоить этот материал.