On 10/23/2014 04:30 PM, Simon Kennedy wrote:
Just out of academic interest, is there somewhere in the Python docs where the 
following is explained?


https://docs.python.org/3/library/stdtypes.html#truth-value-testing

3 == True
False

as opposed to:

https://docs.python.org/3/library/stdtypes.html#comparisons

if 3:
        print("It's Twue")
        
It's Twue

i.e. in the if statement 3 is True but not in the first


Here is the misunderstanding: it is not true that 3 is True in the if example, but it's evaluated as True in a boolean context. Illustration:

>>> 3 == True
False

>>> bool(3) == True
True

>>> bool(3) is True
True

If you combine if and a comparison, it behaves like in your first example:

>>>
if 3 == True:
    print('True')
else:
    print('False')

False


--
https://mail.python.org/mailman/listinfo/python-list

Reply via email to