>>> 5 in [1, 2, 3, 4] == False
False
は、私は、これはメンバーシップをテストするための奇妙な方法であることを取得し、なぜこれはアレイメンバーシップテストとして機能しませんか?
>>> 5 not in [1, 2, 3, 4]
True
ことを「正しい」方法です。どのような私を混乱は、その動作が異なっているということです
>>> 5 in ([1, 2, 3, 4] == False)
TypeError ...
は、私が何かを明らかに見逃している
>>> (5 in [1, 2, 3, 4]) == False
True
と両方? (Python 2.7とPython 3.4でテスト済み)。
明確にするために、私は最後の3つのスニペットを理解しています。私はの最初のスニペットの動作について質問しています。なぜそれが違うのですか?
これは間違いなくドゥープですが、適切なドゥープ候補を見つけることができません。 – user2357112
OK ...それで、どうやって詐欺だと分かっていますか? –
@ user2357112 - [これ(http://stackoverflow.com/questions/34824578/python-in-operator-is-not-working)は近いようです。 – TigerhawkT3