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

Слайд 3

⚠️ Частые ошибки

Разберём типичные ошибки, которые совершают при изучении логических операторов and, or и not.

❌ Ошибка 1. Неправильное использование оператора сравнения

# Неправильно
if age >= 7 and <= 9:
    ...

Запуск такого кода приведёт к ошибке синтаксиса (SyntaxError), потому что Python не понимает, к чему относится вторая часть выражения.

✅ Правильно:

if age >= 7 and age <= 9:
    ...
💡 Каждое сравнение в Python должно быть полным: переменная оператор значение.

❌ Ошибка 2. Неправильное использование логического оператора or

# Неправильно
if my_city == 'Сидней' or 'Аделаида' or 'Перт':
    print('Я живу в Австралии')

Такой код всегда будет возвращать True, потому что непустые строки 'Аделаида' и 'Перт' интерпретируются как True. По сути Python видит выражение так:

if my_city == 'Сидней' or True or True:
    print('Я живу в Австралии')

А это условие будет истинным при любом значении my_city.

✅ Правильно:

if my_city == 'Сидней' or my_city == 'Аделаида' or my_city == 'Перт':
    print('Я живу в Австралии')
💡 Каждый вариант сравнения нужно указывать явно. Альтернатива — использовать оператор in:
if my_city in ('Сидней', 'Аделаида', 'Перт'):
    print('Я живу в Австралии')