Hoe zou je zeggen niet gelijk?
Zoals
if hi == hi:
print "hi"
elif hi (does not equal) bye:
print "no hi"
Is er iets equivalent aan ==
dat "niet gelijk" betekent?
Gebruik !=
. Zie vergelijkingsoperatoren. Voor het vergelijken van object identiteiten, kun je het sleutelwoord is
en zijn negatie is niet
gebruiken.
bijv.
1 == 1 # -> True
1 != 1 # -> False
[] is [] #-> False (distinct objects)
a = b = []; a is b # -> True (same object)
Niet gelijk aan !=
(vs gelijk aan ==
)
Vraag je naar iets als dit?
answer = 'hi'
if answer == 'hi': # equal
print "hi"
elif answer != 'hi': # not equal
print "no hi"
Deze Python - Basis Operators grafiek kan nuttig zijn.
Er is de !=
(niet gelijk) operator die True
teruggeeft als twee waarden verschillen, maar wees voorzichtig met de types want "1" != 1
. Dit zal altijd Waar
teruggeven en "1" == 1
zal altijd Val
teruggeven, omdat de types verschillen. Python is dynamisch, maar sterk getypeerd, en andere statisch getypeerde talen zouden klagen over het vergelijken van verschillende types.
Er is ook nog de else
clausule:
# 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"
De is
operator is de objectidentiteit operator die gebruikt wordt om te controleren of twee objecten in feite hetzelfde zijn:
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.