Open In App

Python Logical Operators

Last Updated : 06 May, 2024
Improve
Improve
Like Article
Like
Save
Share
Report

Python logical operators are used to combine conditional statements, allowing you to perform operations based on multiple conditions. These Python operators, alongside arithmetic operators, are special symbols used to carry out computations on values and variables. In this article, we will discuss logical operators in Python definition and also look at some Python logical operators programs, to completely grasp the concept.

Logical Operators in Python

In Python, Logical operators are used on conditional statements (either True or False). They perform Logical AND, Logical OR, and Logical NOT operations.

OperatorDescriptionSyntaxExample
andReturns True if both the operands are truex and yx>7 and x>10
orReturns True if either of the operands is truex or yx<7 or x>15
notReturns True if the operand is falsenot xnot(x>7 and x> 10)

Truth Table for Logical Operators in Python

Truth Table for Python Logical Operators

AND Operator in Python

The Boolean AND operator returns True if both the operands are True else it returns False. AND Operator in Python

Logical AND operator in Python Examples

Let’s look at some Python AND operator programs, and understand the workings of AND operator.

Example 1: The code initializes variables a, b, and c, then checks if a and b are greater than 0, and prints “The numbers are greater than 0” if true; it also checks if all three variables are greater than 0, printing the same message, otherwise, it prints “At least one number is not greater than 0”.

Python
a = 10
b = 10
c = -10
if a > 0 and b > 0:
    print("The numbers are greater than 0")
if a > 0 and b > 0 and c > 0:
    print("The numbers are greater than 0")
else:
    print("Atleast one number is not greater than 0")

Output

The numbers are greater than 0
Atleast one number is not greater than 0

Example 2: The code checks if all variables a, b, and c evaluate to True, printing a message accordingly.

Python
a = 10
b = 12
c = 0
if a and b and c:
    print("All the numbers have boolean value as True")
else:
    print("Atleast one number has boolean value as False")

Output

Atleast one number has boolean value as False

Note: If the first expression is evaluated to be false while using the AND operator, then the further expressions are not evaluated.

Python OR Operator

The Boolean OR operator returns True if either of the operands is True.

Python OR Operator

Logical OR operator in Python Examples

Let’s look at some Python OR operator program to understand it’s workings 

Example 1: The code checks if either ‘a’ or ‘b’ is greater than 0 and prints a corresponding message, then checks if either ‘b’ or ‘c’ is greater than 0 and prints a message accordingly.

Python
a = 10
b = -10
c = 0
if a > 0 or b > 0:
    print("Either of the number is greater than 0")
else:
    print("No number is greater than 0")
if b > 0 or c > 0:
    print("Either of the number is greater than 0")
else:
    print("No number is greater than 0")

Output

Either of the number is greater than 0
No number is greater than 0

Example 2: The code checks if any of the variables a, b, or c has a boolean value as True; if so, it prints “At least one number has boolean value as True”, otherwise, it prints “All the numbers have boolean value as False”.

Python
a = 10
b = 12
c = 0
if a or b or c:
    print("Atleast one number has boolean value as True")
else:
    print("All the numbers have boolean value as False")

Output

Atleast one number has boolean value as True

Note: If the first expression is evaluated to be True while using or operator, then the further expressions are not evaluated.

Python NOT Operator

The Boolean NOT operator works with a single boolean value. If the boolean value is True it returns False and vice-versa.

Python NOT Operator

Logical NOT Operator in Python Examples

The code checks if a is divisible by either 3 or 5, otherwise, it prints a message indicating that it is not. Let’s look at this Python NOT operator program to understand its working.

Python
a = 10

if not a:
    print("Boolean value of a is True")
if not (a % 3 == 0 or a % 5 == 0):
    print("10 is not divisible by either 3 or 5")
else:
    print("10 is divisible by either 3 or 5")

Output

10 is divisible by either 3 or 5

Order of Precedence of Logical Operators

In the case of multiple operators, Python always evaluates the expression from left to right. We can verify Python logical operators precedence by the below example. 

Python
def order(x):
    print("Method called for value:", x)
    return True if x > 0 else False


a = order
b = order
c = order
if a(-1) or b(5) or c(10):
    print("Atleast one of the number is positive")

Output

Method called for value: -1
Method called for value: 5
Atleast one of the number is positive


Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads