web-dev-qa-db-ja.com

Pythonには「等しくない」演算子はありますか?

どのようにあなたは言う等しくないと思いますか?

好き

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

「等しくない」という意味の==と同等のものはありますか?

329
Aj Entity

!=を使用してください。 比較演算子 を参照してください。オブジェクトIDを比較するために、キーワードisとその否定is notを使用できます。

例えば.

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

!=と等しくない(vs ==と等しい)

あなたはこのようなことについて質問していますか?

answer = 'hi'

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

この Python - 基本演算子 のグラフは役に立つかもしれません。

48
Levon

2つの値が異なるときにTrueを返す!=(等しくない)演算子がありますが、"1" != 1は型に注意してください。型が異なるため、これは常にTrueを返し、"1" == 1は常にFalseを返します。 Pythonは動的ですが強く型付けされており、他の静的型付け言語は異なる型を比較す​​ることについて不平を言うでしょう。

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"

is演算子は、2つのオブジェクトが実際に同じであるかどうかをチェックするために使用される オブジェクトの識別性 演算子です。

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.
20
Samy Vilar

!=または<>の両方を使用できます。

ただし、!=が推奨されない場合は<>が優先されることに注意してください。

5
Malek B.

他のみんながすでに等しくないと言うための他の方法のほとんどをリストしているように見て、私はただ加えるつもりです:

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"

この場合、positive ==(true)のチェックをnegativeに、そしてその逆に切り替えるのは簡単です。

5
gabeio

「等しくない」条件には、Pythonには2つの演算子があります -

a。)!= 2つのオペランドの値が等しくない場合、条件は真になります。

b。)<> 2つのオペランドの値が等しくない場合、条件は真になります。これは!=演算子に似ています。

0
user128364