Логічні оператори
Люди кажуть «так і так», «так або ні», «точно ні». У Python логічні оператори and, or та not формально виражають ці ідеї та повертають булеві значення (True/False), які ви використовуватимете з операціями порівняння у if/while.
Значення кожного оператора
Пріоритет
not має вищий пріоритет, ніж and, який має вищий пріоритет, ніж or (not > and > or). Використовуйте дужки, якщо сумніваєтеся.
Наприклад, age >= 18 and has_id дорівнює True лише якщо обидві перевірки виконуються:
123age = 21 has_id = True print(age >= 18 and has_id) # True
Таблиця істинності
Таблиця істинності містить усі можливі значення істинності вхідних даних і показує результат логічного виразу. Це компактний спосіб аналізу логіки без виконання коду.
Використання таблиці
Якщо X — False, а Y — True, тоді X and Y — False, X or Y — True, а not X — True.
Повернення значень і коротке замикання (разом)
and і or не завжди повертають саме слова True/False, вони повертають один зі своїх операндів, і Python може зупинити обчислення раніше, якщо результат вже відомий.
-
A and B: -
Якщо
Aє хибним значенням, весь вираз є хибним і результатом будеA(Python не обчислюєB); -
Якщо
Aє істинним значенням, результат залежить відBі вираз обчислюється якB. -
A or B: -
Якщо
Aє істинним значенням, вираз істинний і результатом будеA(Python не обчислюєB); -
Якщо
Aє хибним значенням, результат залежить відBі вираз обчислюється якB. -
not Xзавжди повертає справжнє булеве значення:TrueабоFalse.
1234567891011121314151617# Choosing a display name for a user profile username = "" # user didn't set a custom name print(username or "Guest") # "Guest" → fallback to default name username = "Alice" print(username or "Guest") # "Alice" → custom name is used # Checking login attempts and access permissions login_attempts = 0 access_level = 123 print(login_attempts and access_level) # 0 → login not yet attempted login_attempts = 5 print(login_attempts and access_level) # 123 → user has access after attempts # Checking empty and non-empty values print(not 0, not "Hello") # True False → 0 is falsey, non-empty string is truthy
1. Заповніть пропуски значеннями True або False. Нехай X = True, Y = False.
2. Яке твердження відповідає класичній логіці для "ні X, ні Y"?
3. Що повертає цей вираз?
Дякуємо за ваш відгук!
Запитати АІ
Запитати АІ
Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат
Awesome!
Completion rate improved to 3.45
Логічні оператори
Свайпніть щоб показати меню
Люди кажуть «так і так», «так або ні», «точно ні». У Python логічні оператори and, or та not формально виражають ці ідеї та повертають булеві значення (True/False), які ви використовуватимете з операціями порівняння у if/while.
Значення кожного оператора
Пріоритет
not має вищий пріоритет, ніж and, який має вищий пріоритет, ніж or (not > and > or). Використовуйте дужки, якщо сумніваєтеся.
Наприклад, age >= 18 and has_id дорівнює True лише якщо обидві перевірки виконуються:
123age = 21 has_id = True print(age >= 18 and has_id) # True
Таблиця істинності
Таблиця істинності містить усі можливі значення істинності вхідних даних і показує результат логічного виразу. Це компактний спосіб аналізу логіки без виконання коду.
Використання таблиці
Якщо X — False, а Y — True, тоді X and Y — False, X or Y — True, а not X — True.
Повернення значень і коротке замикання (разом)
and і or не завжди повертають саме слова True/False, вони повертають один зі своїх операндів, і Python може зупинити обчислення раніше, якщо результат вже відомий.
-
A and B: -
Якщо
Aє хибним значенням, весь вираз є хибним і результатом будеA(Python не обчислюєB); -
Якщо
Aє істинним значенням, результат залежить відBі вираз обчислюється якB. -
A or B: -
Якщо
Aє істинним значенням, вираз істинний і результатом будеA(Python не обчислюєB); -
Якщо
Aє хибним значенням, результат залежить відBі вираз обчислюється якB. -
not Xзавжди повертає справжнє булеве значення:TrueабоFalse.
1234567891011121314151617# Choosing a display name for a user profile username = "" # user didn't set a custom name print(username or "Guest") # "Guest" → fallback to default name username = "Alice" print(username or "Guest") # "Alice" → custom name is used # Checking login attempts and access permissions login_attempts = 0 access_level = 123 print(login_attempts and access_level) # 0 → login not yet attempted login_attempts = 5 print(login_attempts and access_level) # 123 → user has access after attempts # Checking empty and non-empty values print(not 0, not "Hello") # True False → 0 is falsey, non-empty string is truthy
1. Заповніть пропуски значеннями True або False. Нехай X = True, Y = False.
2. Яке твердження відповідає класичній логіці для "ні X, ні Y"?
3. Що повертає цей вираз?
Дякуємо за ваш відгук!