Comment utiliser les opérateurs Python non égal et égal
Publié: 2022-01-29En Python, vous pouvez utiliser les opérateurs différent de et égal à pour vérifier si deux objets Python ont la même valeur. Ce didacticiel vous apprendra à utiliser ces opérateurs avec de nombreux exemples de code.
Dans ce didacticiel, vous apprendrez :
- la syntaxe de l'opérateur non égal (
!=) et les cas d'utilisation, - la syntaxe de l'opérateur égal (
==) avec des exemples, et - l'utilisation des opérateurs
isetis notpour vérifier l'identité de deux objets Python.
Commençons.
Syntaxe de l'opérateur Python non égal
Pour deux objets Python obj1 et obj2 , la syntaxe générale pour utiliser l'opérateur non égal est :
<obj1> != <obj2>- renvoie
Truelorsque les valeurs deobj1etobj2ne sont pas égales, et - renvoie
Falsele cas contraire.
Remarque : Comme mentionné ci-dessus,
obj1etobj2peuvent être des nombres entiers, des nombres à virgule flottante, des chaînes, des listes, etc.
Exemples de code d'opérateur Python non égal
Dans cette section, codons quelques exemples pour mieux comprendre l'opérateur non égal .
Utilisation de l'opérateur Python non égal pour la comparaison
Voici notre premier exemple.
num1 = 27 num2 = 3*9 num1 != num2 # Output: FalseVous pouvez exécuter les exemples de code sur l'IDE Geekflare Python, directement depuis votre navigateur. Ou vous pouvez choisir d'exécuter sur votre machine locale.
Comme num1 = 27 et que num2 également évalué à 27 ( 3*9 = 27 ), les valeurs de num1 et num2 sont égales. Ainsi, l'opérateur != renvoie False .
Prenons un autre exemple.
Dans le code ci-dessous, num1 est défini sur 7. Et num2 est défini sur la chaîne 7. Comme ils sont de types de données différents, l' opérateur différent renvoie True .
num1 = 7 num2 = "7" num1 != num2 # Output: TrueVous convertissez la chaîne en entier, comme indiqué :
num1 = 7 num2 = int("7") num1 != num2 # Output: False Dans ce cas, vous pouvez voir que le résultat renvoyé est False , car num1 et num2 sont désormais égaux à l'entier 7.
Vous pouvez également utiliser l'opérateur non égal avec des collections Python telles que des listes, des tuples et des ensembles.
Remarque : Pour les collections de données telles que les listes, l'opérateur non égal fonctionne en vérifiant les valeurs des éléments individuels. Par exemple, deux listes
list1etlist2— chacune de longueurn— ne sont égales que silist1[i] == list2[i]foriin{0,1,2,3,..n-1}.
Voici un exemple :
list1 = [2,4,6,8] list2 = [2,4,6,9] list1 != list2 # Output: True Dans l'exemple ci-dessus, list1 et list2 diffèrent par un seul élément. Et l'opérateur non égal != renvoie True comme prévu.
Utilisation de l'opérateur Python non égal dans les conditions
Vous utiliserez souvent l'opérateur différent de dans le cadre des conditions Python.
Par exemple, l'extrait de code ci-dessous montre comment vous pouvez vérifier si un nombre est impair ou non.
Un nombre qui n'est pas divisible par 2 est impair . Et cela se réduit à la condition
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. Vous pouvez également utiliser des conditions dans les compréhensions de liste lorsque vous souhaitez conserver uniquement les éléments de liste qui remplissent une condition spécifique. Dans l'exemple ci-dessous, odd_10 est la liste de tous les nombres impairs inférieurs à 10.
odd = [num for num in range(10) if num%2 != 0] print(odd) # Output: [1, 3, 5, 7, 9] Et cela termine notre discussion sur l'opérateur non égal ( != ).
Comme vous l'avez peut-être deviné, l'opérateur égal à produit l'effet opposé de l'opérateur différent de.
Vous en apprendrez plus à ce sujet dans la section suivante.
Syntaxe de l'opérateur d'égalité Python
Voici la syntaxe pour utiliser l'opérateur égal à de Python :
<obj1> == <obj2> #where <obj1> and <obj2> are valid Python objects- renvoie
Truelorsque les valeurs deobj1etobj2sont égales, et - renvoie
Falsele cas contraire.
Exemples de code d'opérateur égal Python
L'opérateur égal ( == ) peut être utilisé de manière très similaire à l'opérateur non égal .
Codons les exemples suivants :
- pour vérifier si deux chaînes sont égales,
- pour vérifier si un nombre est pair, et
- utiliser des conditions dans la compréhension de liste
Utilisation de l'opérateur Python non égal pour la comparaison
Dans l'extrait de code ci-dessous, str1 et str2 sont égaux en termes de valeur. Ainsi, l'opérateur égal ( == ) renvoie True .

str1 = "coding" str2 = "coding" str1 == str2 # Output: True 
Utilisons maintenant l'opérateur égal dans une expression conditionnelle.
Remarque : Un nombre qui est également divisible par 2 est pair . Et dans le code, cela se réduit à la condition
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.Construisons maintenant sur cet exemple, utilisons la compréhension de liste de Python pour obtenir tous les nombres pairs inférieurs à 10.
even_10 = [num for num in range(10) if num%2 == 0] print(even_10) # Output: [0, 2, 4, 6, 8]Dans l'exemple ci-dessus,
-
range(10)renvoie un objet range qui peut être bouclé pour obtenir tous les entiers de 0 à 9. - La condition
num%2 == 0estTrueuniquement pour les nombres pairs. - Donc
even_10est la liste de tous les nombres pairs inférieurs à 10.
Jusqu'à présent, vous avez appris à vérifier l' égalité à l'aide des opérateurs non égal ( != ) et égal ( == ).
Dans la section suivante, vous apprendrez à vérifier l' identité de deux objets. Vous allez vérifier si deux objets Python sont identiques .
Comment utiliser Python est et n'est pas les opérateurs
Si vous êtes débutant en programmation Python, il est possible que vous soyez confus entre les opérateurs == et is . Clarifions cela dans cette section.
Dans la section précédente, nous avions un exemple où str1 et str2 égaux et l'opérateur == renvoyait True .
Exécutez maintenant l'extrait de code suivant.
str1 = "coding" str2 = "coding" str1 is str2 # Output: False Vous pouvez voir que str1 is str2 renvoie False .
Prenons du recul et comprenons ce que fait l'opérateur is de Python.
L'opérateur
isopère sur deux objets Python quelconques.
Et renvoieTrueuniquement si les deux objets sont identiques , c'est-à-dire qu'ils font référence au même objet en mémoire.
Même si str1 est égal à str2 , str1 n'est pas str2 car ils pointent vers deux objets différents en mémoire. Et donc, ils ont des identités différentes.

En Python, vous pouvez utiliser la fonction id() pour obtenir l'identité de l'objet.
Exécutez la cellule de code suivante pour obtenir les identités de str1 et str2 .
id(str1) # Sample output: 139935398870320 id(str2) # Sample output: 139935398871344 Comme vous pouvez le voir, str1 et str2 ont des identités différentes. Et str1 is str2 renvoie False comme prévu.
Mettre ensemble,
<obj1> is <obj2> # returns True if and only if id(<obj1>) == id(<obj2>) # returns TrueVérifions cela rapidement, comme indiqué :
str1 = "coding" str2 = str1 print(str1 is str2) print(id(str1) == id(str2)) # Output True True Intuitivement, l'opérateur is not fait le contraire de l'opérateur is .
L'opérateur
is notopère sur deux objets Python quelconques.
Et renvoieFalseuniquement si les deux objets sont identiques , c'est-à-dire qu'ils font référence au même objet en mémoire. Sinon, il renvoieTrue.
Dans les exemples de code ci-dessus, essayez de remplacer is par is not et vérifiez les résultats.
Conclusion
J'espère que vous avez trouvé ce tutoriel utile.
Pour résumer, vous avez appris :
- comment utiliser les opérateurs égal (
==) et non égal (!=) pour vérifier si deux objets Python ont la même valeur, - la différence entre l'égalité et l' identité des objets Python, et
- comment Python
isetis notles opérateurs aident à vérifier si deux objets Python sont identiques.
Apprenez à calculer le décalage horaire ou à créer un jeu de serpent en python ici.
Rendez-vous tous dans le prochain tutoriel. D'ici là, bon apprentissage et bon codage !
