Logical operators in Python are used to perform logical operations on boolean values. These operators play a critical role in decision-making and conditional statements in Python programming.

What Are Logical Operators in Python?
Python has three main logical operators:
and
: ReturnsTrue
if both conditions are true.or
: ReturnsTrue
if at least one condition is true.not
: Reverses the boolean value of a condition.
These operators are essential for creating more complex conditional expressions in your Python code.
1. and
Operator
The and
operator evaluates two conditions and returns True
only if both conditions are true.
Syntax:
condition1 and condition2
Example:
age = 25 is_employed = True if age > 18 and is_employed: print("Eligible for the job") else: print("Not eligible for the job")
Output:
Eligible for the job
2. or
Operator
The or
operator evaluates two conditions and returns True
if at least one condition is true.
Syntax:
condition1 or condition2
Example:
has_experience = False has_certificate = True if has_experience or has_certificate: print("You qualify for the course") else: print("You need to meet at least one requirement")
Output:
You qualify for the course
3. not
Operator
The not
operator reverses the result of a condition. If a condition is True
, it returns False
and vice versa.
Syntax:
not condition
Example:
is_active = False if not is_active: print("Account is inactive") else: print("Account is active")
Output:
Account is inactive
Combining Logical Operators
Logical operators can be combined to form complex conditions.
Example:
age = 30 income = 50000 has_good_credit = True if age > 25 and income > 40000 and has_good_credit: print("Loan approved") else: print("Loan not approved")
Output:
Loan approved
Truth Table for Logical Operators
Condition 1 | Condition 2 | Condition 1 and Condition 2 | Condition 1 or Condition 2 |
---|---|---|---|
True | True | True | True |
True | False | False | True |
False | True | False | True |
False | False | False | False |
Practical Use Cases
1. Access Control:
username = "admin" password = "1234" if username == "admin" and password == "1234": print("Login successful") else: print("Invalid credentials")
2. Game Development:
player_alive = True has_shield = False if player_alive and not has_shield: print("You are vulnerable to attacks!")
3. Data Validation:
email = "user@example.com" is_verified = False if email and not is_verified: print("Please verify your email")
Common Mistakes with Logical Operators
- Using
&
Instead ofand
:- In Python,
&
is a bitwise operator, not a logical operator. Useand
for logical operations.
- In Python,
- Order of Evaluation:
- Logical operators follow a precedence order:
not
>and
>or
. Use parentheses for clarity:
- Logical operators follow a precedence order:
if (x > 5 and y < 10) or z == 3: print("Condition met")
Mini-Project: Login Validation System
Objective:
Create a Python program that validates a user’s login using logical operators.
Code:
stored_username = "admin" stored_password = "secure123" input_username = input("Enter your username: ") input_password = input("Enter your password: ") if input_username == stored_username and input_password == stored_password: print("Welcome, Admin!") else: print("Invalid username or password")
Sample Run:
Enter your username: admin
Enter your password: secure123
Welcome, Admin!
Interview Questions
1. Google
Q: How does Python handle precedence in logical operators?
A: Logical operators follow this precedence: not
> and
> or
.
2. Amazon
Q: Can you use logical operators with non-boolean values?
A: Yes, Python evaluates non-boolean values based on their truthy or falsy nature. For example:
result = "" or "Default" print(result) # Output: Default
3. TCS
Q: How do you optimize nested logical conditions?
A: Simplify conditions by combining expressions and using parentheses to clarify precedence.
4. Infosys
Q: Explain short-circuit evaluation in Python logical operators.
A: Python stops evaluating conditions as soon as the result is determined.
For example, in True or False
, the second condition is not evaluated.
5. Zoho
Q: Write a code snippet to check if a number is within a specific range using logical operators.
A:
num = 15 if num > 10 and num < 20: print("Number is within range") else: print("Number is out of range")
Conclusion
Logical operators in Python are simple yet powerful tools for building conditional logic. Mastering them enables developers to write efficient, readable, and robust code. Practice combining these operators to handle complex scenarios effectively!ese operators, you can write efficient and clear code to handle complex logic. Whether you’re a beginner or preparing for interviews, understanding these concepts is essential.
logical operators
Question
Your answer:
Correct answer:
Your Answers