Weird expression result

Peter Otten __peter__ at web.de
Mon Aug 18 12:04:32 EDT 2008


George Sakkis wrote:

> I'm probably missing something obvious but I can't put my finger on
> it:
> 
>>>> (3 in [3]) == True
> True
> 
>>>> 3 in ([3] == True)
> Traceback (most recent call last):
>   File "<stdin>", line 1, in <module>
> TypeError: argument of type 'bool' is not iterable
> 
>>>> 3 in [3] == True
> False
> 
> How/why does the last one evaluate to False ?
> 
> George

This works just like a < b < c:

>>> 3 in [3] and [3] == True
False

Peter



More information about the Python-list mailing list