Как бы вы сказали, не соответствует?
Как
if hi == hi:
print "hi"
elif hi (does not equal) bye:
print "no hi"
Есть ли замена для ==
, что означает "не равно"?
Как бы вы сказали, не соответствует?
Как
if hi == hi:
print "hi"
elif hi (does not equal) bye:
print "no hi"
Есть ли замена для ==
, что означает "не равно"?
Используйте !=
. См. операторы сравнения. Для сравнения идентификаторов объектов вы можете использовать ключевое слово is
и его отрицание is not
.
например.
1 == 1 # -> True
1 != 1 # -> False
[] is [] #-> False (distinct objects)
a = b = []; a is b # -> True (same object)
Не равно !=
(vs equal ==
)
Вы спрашиваете о чем-то подобном?
answer = 'hi'
if answer == 'hi': # equal
print "hi"
elif answer != 'hi': # not equal
print "no hi"
Эта диаграмма Python - Basic Operators может быть полезна.
Там оператор !=
(не равно), который возвращает True
, когда два значения отличаются друг от друга, но будьте осторожны с типами, вызывающими "1" != 1
, это всегда будет возвращать значение True, а "1" == 1
всегда будет возвращать значение False, так как типы отличаются, python динамически, но строго типизирован, другие статически типизированные языки будут жаловаться на сравнение разных типов.
Также существует предложение else
# this will always print either "hi" or "no hi" unless something unforseen 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"
Оператор is
- это оператор object identity
, используемый для проверки того, являются ли два объекта одинаковыми:
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.
Увидев, что все остальные уже перечислили большинство других способов сказать не равные, я просто добавлю:
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 are false
print "you are good for another day"
в этом случае просто переключить проверку положительного == (true) на отрицательный и наоборот...
Вы можете использовать как !=
, так и <>
.
Однако обратите внимание, что !=
является предпочтительным, если <>
устарел.
Используйте !=
или <>
. Оба значения не равны.
Операторы сравнения <>
и !=
являются альтернативными написаниями одного и того же оператора. !=
является предпочтительным написанием; <>
устаревает. [Ссылка: ссылка на язык Python]
Вы можете просто сделать:
if hi == hi:
print "hi"
elif hi != bye:
print "no hi"