Логічними є вирази, при обчисленні яких одержується логічне значення True або False(«істина» або «хиба»). Результат їх обчислення можна зберігати в змінну, яка буде мати тип bool. Змінна типу bool може набувати одного з двох значень — True (Істина) або False (Хибність).
Приклад:
 Якщо змінній надати значення True, це буде змінна типу bool:
>>> type(True)
<class 'bool'>
>>> a = True
>>> print(a)
True
Прості умови
Проста умова — це два вирази, з'єднані оператором порівняння. Простий логічний вираз (проста умова) утворюється за допомогою логічних операцій:
 
Знак операції
Значення
Логічний вираз
Результат
==
 Дорівнює
8 == 9
False
<
 Менше
8 < 9
True
>
 Більше
8 > 9
False
<=
 Менше або дорівнює
5 <= 2
False
>=
 Більше або дорівнює
5 >= 2
True
!=
 Не дорівнює
5 != 2
True
Приклад:
Змінній можна присвоїти значення логічного виразу, при цьому створюється змінна типу bool :
>> a=3<5
>>> a
True
Складені умови
Складена умова — кілька простих умов, з'єднаних логічними операціями AND (логічне І, інакше — логічний добуток), OR (логічне АБО,  інакше — логічна сума), ХОR ((виключне АБО), NOT (логічне заперечення).
Складені умови записуються у вигляді логічних виразів, які повертають True чи False в залежності від значень аргументів.
 
умови.PNG

Логічну функцію прийнято задавати у вигляді таблиці істинності, вхідними значеннями якої є аргументи функції (значення змінних  для логічного виразу), а вихідними – відповідні значення логічної функції.
 
табл истинности.PNG
Обчислення виразів виконуються зліва направо у відповідності до пріоритету операцій:
1 – Not; 2 – And; 3 – Or.
Приклад:
not а <= 3 — рівнозначне виразу а > 3;
age >= 10 and age <= 18 — істинне тоді й тільки тоді, коли значення age розташовується в проміжку від 10 до 18 включно;
age < 10 or age > 18 — істинне для всіх значень age, які не належать проміжку від 10 до 18.
Приклад:
Нехай потрібно визначити, чи належить точка з координатою Х відрізку [0; 10]. У вигляді подвійної нерівності цю умову можна записати так: 0≤х≤10. У Python подвійна нерівність записується як складена умова:
 х >= 0  аnd х <= 10.

ось.PNG
 
Умова істинна, якщо x>=0 i x<=10.
Приклад:
Перевіримо, чи належить значення NUM проміжку [7; 20]:
NUM = 12
print (NUM >= 7 and NUM <= 20) # Буде виведено True
Вбудовані функції all і any
Одночасну перевірку декількох умов можна записати коротше за допомогою вбудованих функцій all (англ. усі) і any (англ. хоч одна).
Функція all([<список логічних виразів>]) повертає True, якщо істинні всі перелічені в списку умови.
Приклад:
З’ясуємо, чи є значення NUM парним числом із проміжку від 7 до 20. Для цього слід одночасно перевірити три умови:
>>> NUM = 8
>>> all([NUM >= 7, NUM <= 20, NUM%2 == 0])
True
Функція any([<список логічних виразів>]) повертає True, якщо хоча б один елемент списку дорівнює True.
Приклад:
Перевіримо, чи дорівнює 0 хоча б одне зі значень x, y, z:
>>> x, y, z = 4, 0, 5
>>> any([x == 0, y == 0, z == 0])
True
Джерела:
Інформатика : підруч. для 7-го кл. закл. заг. серед. освіти / Йосиф Ривкінд [та ін.]. — Київ : Генеза, 2024.
Інформатика : підруч. для 7 кл. закл. загал. серед. освіти / [О. О. Бондаренко, В. В. Ластовецький, О. П. Пилипчук, Є. А. Шестопалов]. — Харків : Вид-во «Ранок», 2024.