Перейти к содержанию

1.6. Логический тип данных

1.6. Логический тип данных

Итак, скажите мне, верно ли выражение:

5 > 2 

Да, верно, скажете вы. Число 5 больше, чем число 2.
Так вот, знак > является логическим (булевым) оператором.
У всех логических выражений есть два значения – Верно или Ложно. Но чаще всего программисты говорят по-английски: Тру (True) или Фалс (False).
Итак, если мы в редакторе запишем это выражение, то Python нам должен выдать значение: True
Проверим. Введем наше выражение:
print(5>2)

Ага, на выходе True. Идем дальше.
А если мы введем 5 < 2 – что будет тогда? По идее, зная математику, это выражение должно иметь значение Ложно (False)!
Переделываем пример и смотрим. Действительно. Идем дальше. Мы рассмотрели самый простой вариант логического выражения и оператора. Далее рассмотрим основные логические операторы.

Оператор not

not False - значение True (Верно)
not True - значение False (Ложно)
То есть оператор not дает противоположное значение: «не ложь – это правда».

print(not False)

Результат: True
Кстати, попробуйте самостоятельно набрать Not False и посмотрите, что выдаст Питон.

Оператор or

True or False – значение True
True or True – значение True
False or True – значение True
False or False - значение False
Этот оператор говорит: Правда или Ложь? – Правда. Если в выражении «или» встречается хоть одно True – общее значение будет True.
Если оба False – значит False

А теперь введем выражение:

print((5 > 2) or (5 < 2))

Оператор and

True and False – значение False
True and True – значение True
False and True – значение False
False and False - значение False

То есть здесь мы видим все наоборот. Оператор and дает приоритет значению False. И только если оба значения True and True – итоговое значение тоже будет True.
Запишите в выражение:

print((5 > 2) and (5 < 2))

и узнайте итоговое значение.

Оператор != (не равно)

5 != 2 – значение True
5 != 5 – значение False

Здесь также все ясно: 5 не равно 2 – это Правда. А 5 не равно 5 – это Ложь.

Оператор == (равно)

5 == 2 – значение False
5 == 5 – значение True

И здесь все понятно: 5 равно 2 – это Ложь, а 5 равно 5 – Правда. Оператор записывается как два подряд знака = Внимание: не путайте с операцией присваивания переменной.

Операторы сравнения: > (больше), < (меньше), <= (меньше или равно), >= (больше или равно). В логических выражениях, вместо конкретных чисел могут использоваться переменные, не забывайте!
Пора практиковаться!