Булевы значения в Python

Булево значение представляет одно из двух значений: True или False.

Булево значение

В программировании вы обычно нуждаетесь знать, истинно или ложно выражение.

Вы можете вычислить любое выражение в Python и получить один из двух ответов, True или False.

При сравнении двух значений выражение будет оценено, и Python вернет булевый ответ:

Пример

print(8 > 7)
print(8 == 7)
print(8 < 7)

Запуск примера

Когда вы выполняете условие в операторе if, Python возвращает True или False:

Пример

В зависимости от того, правильна ли ситуация или нет, напечатайте сообщение:

a = 200
b = 33
if b > a:
  print("b is greater than a")
else:
  print("b is not greater than a")

Запуск примера

Оцените значение и переменную

Функция bool() позволяет вам оценить любое значение и вернуть True или False.

Пример

Оцените строку и цифру:

print(bool("Hello"))
print(bool(10))

Запуск примера

Пример

Оцените два переменные:

x = "Hello"
y = 10
print(bool(x))
print(bool(y))

Запуск примера

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

Если есть какое-то содержимое, то几乎所有 значения будут оценены как True.

За исключением пустой строки, любая строка равна True.

За исключением нуля, любая цифра равна True.

За исключением пустого списка, любая список, кортеж, множество и словарь равны True.

Пример

В следующем примере будет возвращено True:

bool("abc")
bool(123)
bool(["apple", "cherry", "banana"])

Запуск примера

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

На самом деле, кроме пустых значений (например, ()、[]、{}、""、число 0 и значение None), не так много значений будет оценено как False. Конечно, значение False будет вычислено как False.

Пример

В следующем примере будет возвращено False:

bool(False)
bool(None)
bool(0)
bool("")
bool(())
bool([])
bool({})

Запуск примера

В этом случае, результат вычисления значения или объекта False, то есть если объект сгенерирован классом, у которого есть функция __len__, и она возвращает 0 или False:

Пример

class myclass():
  def __len__(self):
    return 0
myobj = myclass()
print(bool(myobj))

Запуск примера

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

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

Пример

Проверка объекта на целочисленный тип:

x = 200
print(isinstance(x, int))

Запуск примера