Тема: Типы данных • Урок 3 из 7
Булевы значения (boolean) — это логический тип данных, который может принимать только два значения: True (истина) или False (ложь). Булевы значения широко используются в условных выражениях и логических операциях.
В Python булевы значения представлены ключевыми словами True и False. Обратите внимание, что первая буква должна быть заглавной:
x = True
y = False
# Неправильно:
# z = true # Вызовет ошибку, так как true не определеноОперации сравнения возвращают булевы значения:
# Операции сравнения
print(5 > 3) # True (больше)
print(5 < 3) # False (меньше)
print(5 >= 5) # True (больше или равно)
print(5 <= 3) # False (меньше или равно)
print(5 == 5) # True (равно)
print(5 != 5) # False (не равно)
print(5 == "5") # False (разные типы)
print(5 is 5) # True (тот же объект)Python предоставляет три логических оператора для работы с булевыми значениями:
# and - логическое И (True, если оба операнда True)
print(True and True) # True
print(True and False) # False
print(False and True) # False
print(False and False) # False
# or - логическое ИЛИ (True, если хотя бы один операнд True)
print(True or True) # True
print(True or False) # True
print(False or True) # True
print(False or False) # False
# not - логическое НЕ (инвертирует значение)
print(not True) # False
print(not False) # TrueЛогические операторы and и or используют принцип "короткого замыкания". Это означает, что если результат операции может быть определен по первому операнду, второй операнд не вычисляется:
# Для оператора and:
# Если первый операнд False, результат всегда False
False and print("Этот код не выполнится")
# Для оператора or:
# Если первый операнд True, результат всегда True
True or print("Этот код не выполнится")Функция bool() позволяет преобразовать любое значение в булево. В Python следующие значения считаются ложными (False):
False — булево значение FalseNone — специальное значение "ничего"0 — целое число ноль0.0 — число с плавающей точкой ноль"" — пустая строка[] — пустой список() — пустой кортеж{} — пустой словарьset() — пустое множествоВсе остальные значения считаются истинными (True).
print(bool(0)) # False
print(bool(1)) # True
print(bool("")) # False
print(bool("abc")) # True
print(bool([])) # False
print(bool([1, 2])) # TrueБулевы значения часто используются в условных выражениях, таких как операторы if, while и тернарный оператор:
x = 10
# Оператор if
if x > 5:
print("x больше 5")
# Оператор if-else
if x % 2 == 0:
print("x четное")
else:
print("x нечетное")
# Тернарный оператор
result = "четное" if x % 2 == 0 else "нечетное"
print(f"x {result}")
# Оператор while
count = 0
while count < 5:
print(count)
count += 1Функции могут возвращать булевы значения, что делает код более читаемым и понятным:
def is_even(number):
return number % 2 == 0
def is_adult(age):
return age >= 18
print(is_even(10)) # True
print(is_adult(16)) # False