Глава 9 · Выполняй мою команду!

Истина или ложь

Прежде чем программа сможет принимать решения, ей нужен способ хранить сам результат решения — логический тип bool.

Мы выяснили: программа отвечает на вопросы «да» или «нет» значениями True и False. Пора познакомиться с типом данных, который их хранит.

bool — логический тип с двумя значениями

Тип bool имеет ровно два возможных значения:

Условиевыполнено?ДаНетTrueFalse
Логический вопрос всегда даёт один из двух результатов: True или False

Обратите внимание: True и False пишутся с заглавной буквы — это ключевые слова Python, а не обычный текст.

bool.py
is_sunny = True
is_raining = False
print(is_sunny, type(is_sunny))
# True <class 'bool'>

bool — это не строка!

Легко перепутать True (значение типа bool) со строкой "True" — но это совершенно разные вещи:

bool_ne_stroka.py
print(type(True))     # <class 'bool'>
print(type("True"))   # <class 'str'>
print(True == "True")  # False — разные типы, разные значения
"True" — это просто текст из четырёх букв
Строка "True" не имеет никакого особого смысла для Python — это обычный непустой текст, который, как мы увидим дальше, при проверке истинности сам ведёт себя как True, но это два разных явления, которые легко перепутать.

Как чаще всего получают bool

Вручную писать True/False приходится редко — обычно их получают в результате сравнения (следующий раздел):

sravnenie_bool.py
print(5 > 3)     # True
print(5 == 3)    # False
Практика: тип bool и True/False
Интерактивный ноутбук прямо в браузере — Python 3.14 через Pyodide, без установки
Открыть практику →