nano_exit

基礎的なことこそ、簡単な例が必要だと思うのです。

pythonでの==とisの違い。

次のコードを見て頂きたい。

x = 0; y = 0

if (x, y) is (0, 0):
    print( True )
else:
    print( False )

if (x, y) == (0, 0):
    print( True )
else:
    print( False )

ニュアンスはどちらも同じようなことをしたい訳だが、"is"では"False"が、"=="では"True"が出力される。

以下のサイトに説明を発見。
== と is の違い | Python-izm

"is"だと、値が同じかどうかではなく、「同一のオブジェクトかどうか」で判断されるため、弾かれたということであった。

もしかしたら、過去のプログラムにこの手のバグがある気がしてめっちゃ怖くなった。。。