Tim Tim - 2 months ago 6
Python Question

How can I print the Truth value of a variable?

In Python, variables have truthy values based on their content. For example:

>>> def a(x):
... if x:
... print (True)
...
>>> a('')
>>> a(0)
>>> a('a')
True
>>>
>>> a([])
>>> a([1])
True
>>> a([None])
True
>>> a([0])
True


I also know I can print the truthy value of a comparison without the if operator at all:

>>> print (1==1)
True
>>> print (1<5)
True
>>> print (5<1)
False


But how can I print the
True
/
False
value of a variable? Currently, I'm doing this:

print (not not a)


but that looks a little inelegant. Is there a preferred way?

Answer

Use the builtin bool type.

print(bool(a))

Some examples from the REPL:

>>> print(bool(''))
False
>>> print(bool('a'))
True
>>> print(bool([]))
False
Comments