Python Booleans: Understanding Boolean Values and Expressions
Learn about Booleans in Python, which represent the two possible values: True
and False
. This guide explains how to evaluate expressions to determine their Boolean value and provides insights into using Boolean logic in programming.
Python - Booleans
Booleans represent one of two values: True
or False
.
Boolean Values
In programming, you often need to know if an expression is True
or False
.
You can evaluate any expression in Python, and get one of two answers: True
or
False
.
Example
When you compare two values, the expression is evaluated, and Python returns the Boolean answer:
print(7 > 3)
print(7 == 3)
print(7 < 3)
Output
True
False
False
Example
When you run a condition in an if
statement, Python returns True
or
False
:
a = 150
b = 45
if b > a:
print("b is greater than a")
else:
print("b is not greater than a")
Output
b is not greater than a
Evaluate Values and Variables
The bool()
function allows you to evaluate any value, and gives you True
or
False
in return:
Example
Evaluate a string and a number:
print(bool("Python"))
print(bool(22))
Output
True
True
Example
Evaluate two variables:
x = "Python"
y = 22
print(bool(x))
print(bool(y))
Output
True
True
Most Values are True
Almost any value is evaluated to True
if it has some sort of content.
Any string is True
, except empty strings.
Any number is True
, except 0.
Any list, tuple, set, and dictionary are True
, except empty ones.
Example
The following will return True
:
print(bool("abc"))
print(bool(123))
print(bool(["apple", "banana", "cherry"]))
Output
True
True
True
Some Values are False
There are not many values that evaluate to False
, except empty values, such as ()
,
[]
, {}
, ""
, the number 0, and the value None
. And of
course, the value False
evaluates to False
.
Example
The following will return False
:
print(bool(False))
print(bool(None))
print(bool(0))
print(bool(""))
print(bool(()))
print(bool([]))
print(bool({}))
Output
False
False
False
False
False
False
False
One more value, or object in this case, evaluates to False
, and that is if you have an object
that is made from a class with a __len__
function that returns 0 or False
:
Example
class MyClass:
def __len__(self):
return 0
myobj = MyClass()
print(bool(myobj))
Output
False
Functions can Return a Boolean
You can create functions that return a Boolean value:
Example
Print the answer of a function:
def my_function():
return True
print(my_function())
Output
True
You can execute code based on the Boolean answer of a function:
Example
Print "YES!" if the function returns True
, otherwise print "NO!":
def my_function():
return True
if my_function():
print("YES!")
else:
print("NO!")
Output
YES!
Python also has many built-in functions that return a Boolean value, like the isinstance()
function, which can be used to determine if an object is of a certain data type:
Example
Check if an object is an integer or not:
x = 150
print(isinstance(x, int))
Output
True