Перейти к основному содержимому

Логическое значение (Boolean) может быть только одним из двух: True или False.


Логические значения

Программам часто нужно выяснить, является ли выражение True или False.

Python может вычислить любое выражение и всегда ответит одним из этих двух значений.

Частый случай — сравнение двух значений, и его результат является логическим значением:

Пример

Prompt
Напишите программу на Python, которая выводит результат трёх сравнений: 10 > 9, 10 == 9 и 10 < 9. Каждое сравнение должно выводиться на отдельной строке с помощью функции print().
Вывод: полная программа на Python

Пример

Выберите, что вывести, в зависимости от того, является ли условие True или False:

Prompt
Напишите программу на Python, которая присваивает a = 200 и b = 33, а затем с помощью оператора if/else выводит, больше ли b, чем a, или нет.
Вывод: полная программа на Python

Вычисление значений и переменных

Передайте любое значение в функцию bool(), и она ответит True или False.

Пример

Проверьте строку и число:

Prompt
Напишите программу на Python, которая с помощью функции bool() вычисляет строку "Hello" и число 15 и выводит оба результата.
Вывод: полная программа на Python

Пример

Проверьте две переменные:

Prompt
Напишите программу на Python, которая присваивает x = "Hello" и y = 15, а затем выводит bool(x) и bool(y).
Вывод: полная программа на Python

Большинство значений — True

Если у значения есть какое-либо содержимое, оно почти всегда считается True.

Строки — True, если они не пустые.

Числа — True, если они не равны 0.

Списки, кортежи, множества и словари — True, если они не пустые.

Пример

Каждый из этих вызовов возвращает True:

Prompt
Напишите программу на Python, которая выводит результат bool() для "abc", 123 и ["apple", "cherry", "banana"].
Вывод: полная программа на Python

Некоторые значения — False

Лишь небольшая группа значений считается False: пустые значения, такие как (), [], {} и "", число 0, значение None и, конечно, само False.

Пример

Каждый из этих вызовов возвращает False:

Prompt
Напишите программу на Python, которая выводит результат bool() для False, None, 0, "", (), [] и {}. Каждый на отдельной строке.
Вывод: полная программа на Python

Пример

Объект тоже может считаться False. Это происходит, когда его класс определяет функцию __len__, которая возвращает 0 или False:

Prompt
Напишите программу на Python, которая определяет класс myclass с методом len, возвращающим 0, создаёт экземпляр и выводит bool() этого экземпляра.
Вывод: полная программа на Python

Функции могут возвращать логическое значение

Ваши собственные функции тоже могут возвращать логическое значение:

Пример

Выведите то, что возвращает функция:

Prompt
Напишите программу на Python, которая определяет функцию myFunction(), возвращающую True, а затем выводит результат вызова этой функции.
Вывод: полная программа на Python

Пример

Выведите «YES!», когда функция возвращает True, и «NO!», когда не возвращает:

Prompt
Напишите программу на Python, которая определяет myFunction(), возвращающую True, а затем с помощью if/else выводит "ДА!", если она возвращает True, иначе "НЕТ!".
Вывод: полная программа на Python

Пример

Многие встроенные функции Python тоже возвращают логическое значение. Одна из них — isinstance(), которая сообщает, имеет ли объект указанный тип данных:

Узнайте, является ли объект целым числом:

Prompt
Напишите программу на Python, которая присваивает x = 200 и выводит isinstance(x, int), чтобы проверить, является ли объект целым числом.
Вывод: полная программа на Python