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