Логические операторы: and
Иногда одного условия мало. «Если сегодня пятница и теплее 20 °C, я пойду гулять» состоит из двух условий, соединённых словом «и». Python использует для этого слово and (по-английски «и»):
day = "пятница"
temperature = 25
if day == "пятница" and temperature > 20:
print("Я иду гулять")Программа выведет:
Я иду гулятьand — это логический оператор: он соединяет два условия в одно. Составное условие истинно, только если истинны обе части. Если хотя бы одна ложна, ложно и всё условие:
True and True— этоTrueTrue and False— этоFalseFalse and True— этоFalseFalse and False— этоFalse
Можно соединять и больше условий подряд: a and b and c истинно, только если истинны все три.
Каждая часть должна быть полным сравнением. «Возраст от 13 до 19» — это age >= 13 and age <= 19. Если сократить, как мы говорим, до age >= 13 and <= 19, программа закончится ошибкой SyntaxError: invalid syntax: Python не знает, с чем сравнивать <= 19.
Задание
- 1
Напишите инструкцию
if, которая выводитДобро пожаловать, только еслиusernameравно"admin"и при этомpasswordравно"kitten42". Соедините два сравнения с помощьюand. - 2
Добавьте ветвь
else, которая выводитНеверное имя пользователя или пароль. Затем попробуйте неверный пароль: изменитеpasswordна"kitten". Одной ложной части достаточно, чтобы всё условие стало ложным, поэтому программа выведетНеверное имя пользователя или пароль.