Y a-t-il un opérateur" pas égal " en Python?
Comment diriez-vous ne correspond pas?
Comme
if hi == hi:
print "hi"
elif hi (does not equal) bye:
print "no hi"
Y a-t-il un remplacement pour ==
qui signifie "pas égal"?
8 réponses
Utilisez !=
. Voir opérateurs de comparaison . Pour comparer les identités d'objets, vous pouvez utiliser le mot clé is
et sa négation is not
.
Par exemple
1 == 1 # -> True
1 != 1 # -> False
[] is [] #-> False (distinct objects)
a = b = []; a is b # -> True (same object)
Pas égal à !=
(vs égal ==
)
Vous demandez quelque chose comme ça?
answer = 'hi'
if answer == 'hi': # equal
print "hi"
elif answer != 'hi': # not equal
print "no hi"
Ce graphiqueopérateurs Python - Basic pourrait être utile.
Il y a l'opérateur !=
(pas égal) qui renvoie True
lorsque deux valeurs diffèrent, mais soyez prudent avec les types Car "1" != 1
. Cela retournera toujours True et "1" == 1
retournera toujours False, car les types diffèrent. Python est dynamiquement, mais fortement typé, et d'autres langages statiquement typés se plaindraient de comparer différents types.
Il y a aussi la clause else
:
# This will always print either "hi" or "no hi" unless something unforeseen happens.
if hi == "hi": # The variable hi is being compared to the string "hi", strings are immutable in Python, so you could use the 'is' operator.
print "hi" # If indeed it is the string "hi" then print "hi"
else: # hi and "hi" are not the same
print "no hi"
Le is
l'opérateur est le l'identité de l'objet opérateur utilisé pour vérifier si deux les objets sont en fait les mêmes:
a = [1, 2]
b = [1, 2]
print a == b # This will print True since they have the same values
print a is b # This will print False since they are different objects.
Vu que tout le monde a déjà énuméré la plupart des autres façons de dire non égal, je vais simplement ajouter:
if not (1) == (1): # This will eval true then false
# (ie: 1 == 1 is true but the opposite(not) is false)
print "the world is ending" # This will only run on a if true
elif (1+1) != (2): #second if
print "the world is ending"
# This will only run if the first if is false and the second if is true
else: # this will only run if the if both if's are false
print "you are good for another day"
Dans ce cas, il est simple de passer le contrôle de positif = = (true) à négatif et vice versa...
Vous pouvez utiliser à la fois !=
ou <>
.
Cependant, notez que {[0] } est préféré lorsque <>
est obsolète.
Il y a deux opérateurs en Python pour la condition "not equal" -
A.)!= Si les valeurs des deux opérandes ne sont pas égales, alors la condition devient vraie. (un != b) est vrai.
B.) Si les valeurs des deux opérandes ne sont pas égales, alors la condition devient vraie. (a b) est vrai. Ceci est similaire à la != opérateur.
Utiliser !=
ou <>
. Les deux signifie pas égal.
Les opérateurs de comparaison <>
et !=
sont des orthographes alternatives du même opérateur. !=
est l'orthographe préférée; <>
est caduc. [Référence: Référence du langage Python]
Vous pouvez simplement faire:
if hi == hi:
print "hi"
elif hi != bye:
print "no hi"