Як використовувати оператори Python Not Equal і Equal

У Python ви можете використовувати оператори не дорівнює та дорівнює, щоб перевірити, чи мають два об’єкти Python однакові значення. Цей підручник навчить вас використовувати ці оператори з великою кількістю прикладів коду.

У цьому посібнику ви дізнаєтеся:

  • синтаксис оператора нерівності (!=) і випадки використання,
  • синтаксис оператора рівності (==) з прикладами та
  • використання операторів is і is not для перевірки ідентичності будь-яких двох об’єктів Python.

Давайте розпочнемо.

Синтаксис оператора Python Not Equal

Для будь-яких двох об’єктів Python obj1 і obj2 загальний синтаксис використання оператора нерівності такий:

<obj1> != <obj2>
  • повертає True, якщо значення obj1 і obj2 не рівні, і
  • інакше повертає False.

Примітка. Як згадувалося вище, obj1 і obj2 можуть бути цілими числами, числами з плаваючою комою, рядками, списками тощо.

Приклади коду оператора Python Not Equal

У цьому розділі давайте напишемо кілька прикладів, щоб краще зрозуміти оператор нерівності.

Використання оператора Not Equal Python для порівняння

Ось наш перший приклад.

num1 = 27
num2 = 3*9

num1 != num2

# Output: False

Ви можете запустити приклади коду в techukraine.net Python IDE прямо з вашого браузера. Або ви можете вибрати запуск на локальній машині.

Оскільки num1 = 27, а num2 також дорівнює 27 (3*9 = 27), значення num1 і num2 рівні. Тому оператор != повертає значення False.

Візьмемо інший приклад.

У наведеному нижче коді для num1 встановлено значення 7. А для num2 встановлено значення рядка 7. Оскільки вони мають різні типи даних, оператор нерівності повертає значення True.

num1 = 7 
num2 = "7" 
num1 != num2 

# Output: True

Ви переводите рядок до цілого числа, як показано:

num1 = 7
num2 = int("7")

num1 != num2

# Output: False

У цьому випадку ви бачите, що повернутий результат — False, оскільки num1 і num2 тепер дорівнюють цілому числу 7.

  Як скинути параметри користувача та налаштування реєстру в Word

Ви також можете використовувати оператор нерівності з колекціями Python, такими як списки, кортежі та набори.

Примітка. Для колекцій даних, таких як списки, оператор notequal працює, перевіряючи значення окремих елементів. Наприклад, два списки list1 і list2 — кожен довжиною n — рівні, лише якщо list1[i] == список2[i] для i в {0,1,2,3,..n-1}.

Ось приклад:

list1 = [2,4,6,8]
list2 = [2,4,6,9]

list1 != list2

# Output: True

У наведеному вище прикладі list1 і list2 відрізняються лише одним елементом. А оператор not equal != повертає True, як і очікувалося.

Використання оператора Not Equal Python в умовних виразах

Ви часто використовуєте оператор не дорівнює як частину умовних виразів Python.

Наприклад, наведений нижче фрагмент коду показує, як можна перевірити, чи є число непарним.

Число, яке не ділиться на 2 навпіл, є непарним. І це зводиться до умови num%2 != 0.

num = 7
if(num%2 != 0):
  print("The number is odd.")
else:
  print("The number is even.")

# Output: The number is odd.

Ви також можете використовувати умови в розуміння списку коли ви хочете зберегти лише ті елементи списку, які відповідають певній умові. У прикладі нижче odd_10 — це список усіх непарних чисел, менших за 10.

odd = [num for num in range(10) if num%2 != 0]
print(odd)

# Output: [1, 3, 5, 7, 9]

І на цьому наше обговорення оператора нерівності (!=) завершується.✅

Як ви вже могли здогадатися, оператор дорівнює створює ефект, протилежний оператору не дорівнює.

Ви дізнаєтеся більше про це в наступному розділі.

Синтаксис оператора рівності Python

Ось синтаксис використання оператора рівності Python:

<obj1> == <obj2>  #where <obj1> and <obj2> are valid Python objects
  • повертає True, коли значення obj1 і obj2 рівні, і
  • інакше повертає False.

Приклади коду оператора Equal Python

Оператор рівності (==) можна використовувати дуже подібно до оператора нерівності.

Давайте закодуємо наступні приклади:

  • перевірити, чи рівні два рядки,
  • щоб перевірити, чи число парне, і
  • використовувати умовні під час розуміння списку
  Як завантажити зовнішні субтитри під час відтворення фільму на Chromecast

Використання оператора Not Equal Python для порівняння

У наведеному нижче фрагменті коду str1 і str2 однакові за значенням. Отже, оператор рівності (==) повертає True.

str1 = "coding"
str2 = "coding"

str1 == str2

# Output: True

Оператор рівняння Python

Давайте тепер використаємо оператор рівності в умовному виразі.

Примітка: число, яке рівномірно ділиться на 2, є парним. А в коді це зводиться до умови num%2 == 0

num = 10
if(num%2 == 0):
  print("The number is even.")
else:
  print("The number is odd.")

# Output: The number is even.

Давайте тепер розглянемо цей приклад, скористаємося розумінням списку Python, щоб отримати всі парні числа, менші за 10.

even_10 = [num for num in range(10) if num%2 == 0]
print(even_10)

# Output: [0, 2, 4, 6, 8]

У наведеному вище прикладі

  • range(10) повертає об’єкт діапазону, який можна прокрутити, щоб отримати всі цілі числа від 0 до 9.
  • Умова num%2 == 0 вірна лише для парних чисел.
  • Отже, парний_10 — це список усіх парних чисел, менших за 10.

Поки що ви навчилися перевіряти рівність за допомогою операторів не рівно (!=) і рівно (==).

У наступному розділі ви дізнаєтесь, як перевірити ідентичність двох об’єктів. Ви перевірите, чи ідентичні два об’єкти Python.

Як використовувати оператори Python є і не є

Якщо ви новачок у програмуванні на Python, можливо, ви плутаєтесь між операторами == та is. Давайте уточнимо це в цьому розділі.

У попередньому розділі ми мали приклад, де str1 і str2 були рівними, а оператор == повертав True.

Тепер запустіть наступний фрагмент коду.

str1 = "coding" 
str2 = "coding" 

str1 is str2 

# Output: False

Ви бачите, що str1 як str2 повертає False.

Давайте зробимо крок назад і зрозуміємо, що робить оператор is Python.

Оператор is діє на будь-яких двох об’єктах Python.
І повертає True, лише якщо два об’єкти ідентичні, тобто вони посилаються на той самий об’єкт у пам’яті.

Незважаючи на те, що str1 дорівнює str2, str1 не є str2, оскільки вони вказують на два різні об’єкти в пам’яті. І тому вони мають різні ідентичності.

  10 найкращих хостинг-провайдерів серверів Colocation для SMB

== і є НЕ те саме

У Python ви можете використовувати id() функція для отримання ідентичності об’єкта.

▶ Запустіть наступну комірку коду, щоб отримати ідентифікатори str1 і str2.

id(str1)

# Sample output: 139935398870320

id(str2)

# Sample output: 139935398871344

Як бачите, str1 і str2 мають різні ідентичності. І str1 є str2 повертає False, як очікувалося.

Зібравши це разом,

<obj1> is <obj2> # returns True if and only if
id(<obj1>) == id(<obj2>) # returns True

Давайте швидко перевіримо це, як показано:

str1 = "coding"
str2 = str1

print(str1 is str2)
print(id(str1) == id(str2))

# Output
True
True

Інтуїтивно зрозуміло, що оператор is not діє протилежно оператору is.

Оператор is not працює з будь-якими двома об’єктами Python.
І повертає False, лише якщо два об’єкти ідентичні, тобто вони посилаються на той самий об’єкт у пам’яті. В іншому випадку він повертає True.

У наведених вище прикладах коду спробуйте замінити is на is not і перевірте результати.

Висновок 👩‍💻

Сподіваюся, цей посібник був для вас корисним.

Підводячи підсумок, ви дізналися:

  • як використовувати оператори рівно (==) і не рівно (!=), щоб перевірити, чи два об’єкти Python мають однакове значення,
  • різниця між рівністю та ідентичністю об’єктів Python, і
  • як оператори Python є і не є, допомагають перевірити, чи ідентичні два об’єкти Python.

Дізнайтеся, як розрахувати різницю в часі або створити гру «змійка» на Python тут.

До зустрічі в наступному підручнику. А поки приємного навчання та програмування!🎉