Есть ли в Python оператор "не равный"?

Как бы вы сказали, не соответствует?

Как

if hi == hi:
    print "hi"
elif hi (does not equal) bye:
    print "no hi"

Есть ли замена для ==, что означает "не равно"?

Ответ 1

Используйте !=. См. операторы сравнения. Для сравнения идентификаторов объектов вы можете использовать ключевое слово is и его отрицание is not.

например.

1 == 1 #  -> True
1 != 1 #  -> False
[] is [] #-> False (distinct objects)
a = b = []; a is b # -> True (same object)

Ответ 2

Не равно != (vs equal ==)

Вы спрашиваете о чем-то подобном?

answer = 'hi'

if answer == 'hi':     # equal
   print "hi"
elif answer != 'hi':   # not equal
   print "no hi"

Эта диаграмма Python - Basic Operators может быть полезна.

Ответ 3

Там оператор != (не равно), который возвращает 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.

Ответ 4

Увидев, что все остальные уже перечислили большинство других способов сказать не равные, я просто добавлю:

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) на отрицательный и наоборот...

Ответ 5

Вы можете использовать как !=, так и <>.

Однако обратите внимание, что != является предпочтительным, если <> устарел.

Ответ 6

Используйте != или <>. Оба значения не равны.

Операторы сравнения <> и != являются альтернативными написаниями одного и того же оператора. != является предпочтительным написанием; <> устаревает. [Ссылка: ссылка на язык Python]

Ответ 7

Вы можете просто сделать:

if hi == hi:
    print "hi"
elif hi != bye:
     print "no hi"