Как да използвате операторите Not Equal и Equal на Python

В Python можете да използвате операторите not equal to и the equal to, за да проверите дали два обекта на Python имат една и съща стойност. Този урок ще ви научи как да използвате тези оператори с много примерен код.

В този урок ще научите:

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

Да започваме.

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

За всеки два обекта на Python obj1 и obj2 общият синтаксис за използване на оператора not equal е:

<obj1> != <obj2>
  • връща True, когато стойностите на obj1 и obj2 не са равни, и
  • връща False в противен случай.

Забележка: Както бе споменато по-горе, obj1 и obj2 могат да бъдат цели числа, числа с плаваща запетая, низове, списъци и т.н.

Примери за код на оператор на Python Not Equal

В този раздел нека кодираме няколко примера, за да разберем по-добре оператора not equal.

Използване на оператор Not Equal на Python за сравнение

Ето първия ни пример.

num1 = 27
num2 = 3*9

num1 != num2

# Output: False

Можете да стартирате примерните кодове в pctechbg.net Python IDE — направо от вашия браузър. Или можете да изберете да работите на вашата локална машина.

Тъй като num1 = 27, а num2 също дава оценка на 27 (3*9 = 27), стойностите на num1 и num2 са равни. Така операторът != връща False.

Да вземем друг пример.

В кода по-долу num1 е зададено на 7. А num2 е зададено на низ 7. Тъй като те са от различни типове данни, операторът not equal връща True.

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

# Output: True

Преобразувате низа в цяло число, както е показано:

num1 = 7
num2 = int("7")

num1 != num2

# Output: False

В този случай можете да видите, че върнатият резултат е False—тъй като num1 и num2 вече са равни на цяло число 7.

  Как да активирате или деактивирате вибрацията на клавиатурата на iPhone

Можете също да използвате оператора not equal с колекции на Python като списъци, кортежи и набори.

Забележка: За колекции от данни, като например списъци, операторът not equal работи, като проверява стойностите на отделните елементи. Например два списъка 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 в условни изрази

Често ще използвате оператора not equal to като част от условните изрази на 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]

И това завършва нашата дискусия за оператора не е равно (!=).✅

Както може би сте се досетили досега, операторът равно на произвежда обратен ефект на оператора не е равно.

  Споделете екрана на вашия компютър с всеки компютър през WiFi или LAN с помощта на ScreenTask

Ще научите повече за това в следващия раздел.

Python Equal Operator Syntax

Ето синтаксиса за използване на оператора равно на Python:

<obj1> == <obj2>  #where <obj1> and <obj2> are valid Python objects
  • връща True, когато стойностите на obj1 и obj2 са равни, и
  • връща False в противен случай.

Примери за код на Python Equal Operator

Операторът за равно (==) може да се използва много подобно на оператора за неравно.

Нека кодираме следните примери:

  • за да проверите дали два низа са равни,
  • за да проверите дали числото е четно и
  • да използвате условни изрази при разбиране на списък

Използване на оператор Not Equal на Python за сравнение

В кодовия фрагмент по-долу str1 и str2 са еднакви по отношение на стойността. Така че операторът за равенство (==) връща True.

str1 = "coding"
str2 = "coding"

str1 == str2

# Output: True

Python Equal оператор

Нека сега използваме оператора за равенство в условен израз.

Забележка: Число, което се дели равномерно на 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 е вярно само за четни числа.
  • И така, even_10 е списъкът на всички четни числа, по-малки от 10.

Досега научихте как да проверявате за равенство с помощта на операторите not equal (!=) и equal (==).

В следващия раздел ще научите как да проверите самоличността на два обекта. Ще проверите дали два обекта на Python са идентични.

Как да използвате операторите is и is not на 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, тъй като те сочат към два различни обекта в паметта. И следователно те имат различни идентичности.

== и е НЕ са едно и също

В Python можете да използвате документ за самоличност() функция за получаване на идентичността на обекта.

▶ Изпълнете следната кодова клетка, за да получите идентичностите на 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 is и is not помагат при проверката дали два обекта на Python са идентични.

Научете как да изчислявате часовата разлика или да направите игра със змия в Python тук.

Ще се видим в следващия урок. Дотогава, приятно учене и кодиране!🎉