>>> 5 in [1, 2, 3, 4] == False
False
我知道这是一种奇怪的方式来测试会员资格
>>> 5 not in [1, 2, 3, 4]
True
是“正确的”方法。令我困惑的是,它的行为与两者不同
>>> (5 in [1, 2, 3, 4]) == False
True
和
>>> 5 in ([1, 2, 3, 4] == False)
TypeError ...
我有没有漏掉一些显而易见的东西?(在Python2.7和Python3.4中测试)。
为了澄清,我理解最后三个片段。我问的是
第一
片段,为什么不同。