Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Вивчайте Оператори Порівняння | Булеві Значення та Порівняння
Типи Даних у Python

bookОператори Порівняння

Порівняння дозволяють програмі ставити питання з відповіддю так/ні щодо значень:

  • Чи однакові ці значення?
  • Чи це більше?
  • Чи входить це число в діапазон?

Порівняння повертає булеве значення (True або False) і є основою логіки if/while.

Основи

Python надає шість операторів порівняння (==, !=, <, <=, >, >=) для перевірки рівності та порядку між значеннями; кожне порівняння повертає True або False.

Рівність — ==

Перевіряє, чи два значення однакові.

12
print(5 == 5) # True print("apple" == "Apple") # False (case matters)
copy
Note
Примітка

= призначає значення змінній, тоді як == порівнює два значення.

Нерівність — !=

Перевіряє, чи два значення різні.

12
print(5 != 3) # True print("cat" != "cat") # False
copy

Більше ніж — >

Повертає True, якщо ліве значення строго більше за праве.

12
print(7 > 9) # False print(12 > 3) # True
copy

Менше ніж — <

Повертає True, якщо ліве значення строго менше за праве.

12
print(2 < 10) # True print("a" < "b") # True (lexicographic order)
copy

Більше або дорівнює — >=

Повертає True, якщо ліве значення більше або дорівнює правому.

12
print(7 >= 7) # True print(4 >= 9) # False
copy

Менше або дорівнює — <=

Повертає True, якщо ліве значення менше або дорівнює правому.

12
print(10 <= 9) # False print(5 <= 5) # True
copy

Ланцюгові порівняння

Python дозволяє записувати діапазони природним чином: 0 < x < 10 означає "x більше за 0 та менше за 10". Усередині це працює як (0 < x) and (x < 10).

123
x = 7 print(0 < x < 10) # True print(5 <= x <= 7) # True
copy

Такий запис є зрозумілим і дозволяє уникнути повторення x.

Особливості чисел з плаваючою комою (дрібні похибки округлення)

Деякі десяткові числа (наприклад, 0.1) неможливо точно представити у двійковій системі. Через це сувора перевірка на рівність для чисел з плаваючою комою може дати неочікуваний результат.

1
print(0.1 + 0.2 == 0.3) # False in many environments
copy

Під час порівняння чисел з плаваючою комою на "рівність" рекомендується використовувати перевірку з допуском.

12
import math print(math.isclose(0.1 + 0.2, 0.3, rel_tol=1e-9)) # True
copy

Ви не стверджуєте «точно дорівнює», ви маєте на увазі «достатньо близько».

Порівняння рядків (регістр і порядок)

Порівняння рядків є чутливими до регістру та лексикографічними (символ за символом у порядку Unicode).

12
print("apple" == "Apple") # False (case matters) print("apple" < "banana") # True ("a" comes before "b")
copy

Для нечутливих до регістру перевірок спочатку нормалізуйте обидві сторони.

12
s1, s2 = "Hello", "heLLo" print(s1.lower() == s2.lower()) # True
copy

1. Заповніть пропуски True або False:

2. Який вираз одним рядком правильно перевіряє, що x знаходиться між 1 та 5 включно (з використанням ланцюгового порівняння)?

3. Яке порівняння рядків є істинним?

question-icon

Заповніть пропуски True або False:

5 == 5
3 < 2

9 >= 9

"A" == "a"

0 < 7 <= 7

Натисніть або перетягніть елементи та заповніть пропуски

question mark

Який вираз одним рядком правильно перевіряє, що x знаходиться між 1 та 5 включно (з використанням ланцюгового порівняння)?

Select the correct answer

question mark

Яке порівняння рядків є істинним?

Select the correct answer

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 2. Розділ 2

Запитати АІ

expand

Запитати АІ

ChatGPT

Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат

Awesome!

Completion rate improved to 5

bookОператори Порівняння

Свайпніть щоб показати меню

Порівняння дозволяють програмі ставити питання з відповіддю так/ні щодо значень:

  • Чи однакові ці значення?
  • Чи це більше?
  • Чи входить це число в діапазон?

Порівняння повертає булеве значення (True або False) і є основою логіки if/while.

Основи

Python надає шість операторів порівняння (==, !=, <, <=, >, >=) для перевірки рівності та порядку між значеннями; кожне порівняння повертає True або False.

Рівність — ==

Перевіряє, чи два значення однакові.

12
print(5 == 5) # True print("apple" == "Apple") # False (case matters)
copy
Note
Примітка

= призначає значення змінній, тоді як == порівнює два значення.

Нерівність — !=

Перевіряє, чи два значення різні.

12
print(5 != 3) # True print("cat" != "cat") # False
copy

Більше ніж — >

Повертає True, якщо ліве значення строго більше за праве.

12
print(7 > 9) # False print(12 > 3) # True
copy

Менше ніж — <

Повертає True, якщо ліве значення строго менше за праве.

12
print(2 < 10) # True print("a" < "b") # True (lexicographic order)
copy

Більше або дорівнює — >=

Повертає True, якщо ліве значення більше або дорівнює правому.

12
print(7 >= 7) # True print(4 >= 9) # False
copy

Менше або дорівнює — <=

Повертає True, якщо ліве значення менше або дорівнює правому.

12
print(10 <= 9) # False print(5 <= 5) # True
copy

Ланцюгові порівняння

Python дозволяє записувати діапазони природним чином: 0 < x < 10 означає "x більше за 0 та менше за 10". Усередині це працює як (0 < x) and (x < 10).

123
x = 7 print(0 < x < 10) # True print(5 <= x <= 7) # True
copy

Такий запис є зрозумілим і дозволяє уникнути повторення x.

Особливості чисел з плаваючою комою (дрібні похибки округлення)

Деякі десяткові числа (наприклад, 0.1) неможливо точно представити у двійковій системі. Через це сувора перевірка на рівність для чисел з плаваючою комою може дати неочікуваний результат.

1
print(0.1 + 0.2 == 0.3) # False in many environments
copy

Під час порівняння чисел з плаваючою комою на "рівність" рекомендується використовувати перевірку з допуском.

12
import math print(math.isclose(0.1 + 0.2, 0.3, rel_tol=1e-9)) # True
copy

Ви не стверджуєте «точно дорівнює», ви маєте на увазі «достатньо близько».

Порівняння рядків (регістр і порядок)

Порівняння рядків є чутливими до регістру та лексикографічними (символ за символом у порядку Unicode).

12
print("apple" == "Apple") # False (case matters) print("apple" < "banana") # True ("a" comes before "b")
copy

Для нечутливих до регістру перевірок спочатку нормалізуйте обидві сторони.

12
s1, s2 = "Hello", "heLLo" print(s1.lower() == s2.lower()) # True
copy

1. Заповніть пропуски True або False:

2. Який вираз одним рядком правильно перевіряє, що x знаходиться між 1 та 5 включно (з використанням ланцюгового порівняння)?

3. Яке порівняння рядків є істинним?

question-icon

Заповніть пропуски True або False:

5 == 5
3 < 2

9 >= 9

"A" == "a"

0 < 7 <= 7

Натисніть або перетягніть елементи та заповніть пропуски

question mark

Який вираз одним рядком правильно перевіряє, що x знаходиться між 1 та 5 включно (з використанням ланцюгового порівняння)?

Select the correct answer

question mark

Яке порівняння рядків є істинним?

Select the correct answer

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 2. Розділ 2
some-alt