Bird
Raised Fist0
Pythonprogramming~5 mins

Logical operators in Python - Cheat Sheet & Quick Revision

Choose your learning style10 modes available

Start learning this pattern below

Jump into concepts and practice - no test required

or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Recall & Review
beginner
What does the and operator do in Python?
The and operator returns True only if both conditions on its sides are True. Otherwise, it returns False.
Click to reveal answer
beginner
What is the result of True or False in Python?
The result is True because the or operator returns True if at least one condition is True.
Click to reveal answer
beginner
Explain the not operator in Python.
The not operator reverses the value of a condition. If the condition is True, not makes it False, and vice versa.
Click to reveal answer
beginner
What will False and True return?
It will return False because and needs both sides to be True to return True.
Click to reveal answer
beginner
How do logical operators help in decision making in code?
Logical operators combine multiple conditions to decide if a block of code should run. They help check if one or more conditions are true or false.
Click to reveal answer
What does the expression True and False evaluate to?
ATrue
BNone
CError
DFalse
Which operator returns True if at least one condition is true?
Aor
Bnot
Cxor
Dand
What is the result of not True?
ATrue
BNone
CFalse
DError
Which logical operator would you use to check if two conditions are both true?
Aand
Bor
Cnot
Dxor
What does False or False evaluate to?
ATrue
BFalse
CNone
DError
Explain how the and, or, and not operators work in Python with simple examples.
Think about how these operators combine or reverse true/false values.
You got /4 concepts.
    Describe a real-life situation where you might use logical operators in a program.
    Consider checking multiple conditions before doing something, like checking weather and time before going outside.
    You got /3 concepts.

      Practice

      (1/5)
      1. Which logical operator in Python returns True only if both conditions are true?
      easy
      A. or
      B. xor
      C. not
      D. and

      Solution

      1. Step 1: Understand the meaning of logical operators

        The and operator returns True only if both conditions are true.
      2. Step 2: Compare with other operators

        or returns True if any condition is true, not reverses a condition, and xor is not a Python keyword.
      3. Final Answer:

        and -> Option D
      4. Quick Check:

        Both true conditions = and [OK]
      Hint: Use 'and' when all conditions must be true [OK]
      Common Mistakes:
      • Confusing 'and' with 'or'
      • Thinking 'not' combines conditions
      • Using 'xor' which is not a Python keyword
      2. Which of the following is the correct syntax to check if x is NOT equal to 10 using logical operators?
      easy
      A. not x = 10
      B. not (x == 10)
      C. x != 10
      D. x not= 10

      Solution

      1. Step 1: Understand how to negate a condition

        The not operator reverses a condition. To check if x is not equal to 10, negate x == 10.
      2. Step 2: Check syntax correctness

        not (x == 10) is correct syntax. x != 10 is also correct but not using logical operators explicitly. Other options have syntax errors.
      3. Final Answer:

        not (x == 10) -> Option B
      4. Quick Check:

        Use 'not' with parentheses for negation [OK]
      Hint: Use 'not (condition)' to reverse it properly [OK]
      Common Mistakes:
      • Writing 'not x = 10' (invalid syntax)
      • Using 'x not= 10' (invalid operator)
      • Confusing '!=' with 'not' operator usage
      3. What is the output of the following code?
      print((5 > 3) and (2 == 2) or not (4 < 1))
      medium
      A. True
      B. False
      C. SyntaxError
      D. None

      Solution

      1. Step 1: Evaluate each condition

        5 > 3 is True, 2 == 2 is True, 4 < 1 is False.
      2. Step 2: Apply logical operators step-by-step

        (5 > 3) and (2 == 2) is True and True = True.
        Then not (4 < 1) is not False = True.
        Finally, True or True = True.
      3. Final Answer:

        True -> Option A
      4. Quick Check:

        True and True or True = True [OK]
      Hint: Evaluate 'and' before 'or', then apply 'not' [OK]
      Common Mistakes:
      • Ignoring operator precedence
      • Misinterpreting 'not' effect
      • Assuming 'or' has higher priority than 'and'
      4. Find the error in this code snippet:
      if not x > 10 and < 5:
          print("Valid")
      medium
      A. Syntax error due to incomplete condition after 'and'
      B. Incorrect use of 'not' operator
      C. Missing parentheses around conditions
      D. No error, code runs fine

      Solution

      1. Step 1: Analyze the condition after 'and'

        The condition after and is just < 5, which is incomplete because it lacks a variable to compare.
      2. Step 2: Identify syntax error

        Python expects a full condition after and. This causes a syntax error.
      3. Final Answer:

        Syntax error due to incomplete condition after 'and' -> Option A
      4. Quick Check:

        Conditions must be complete after logical operators [OK]
      Hint: Check each condition is complete after 'and' or 'or' [OK]
      Common Mistakes:
      • Assuming 'not' applies to both conditions
      • Ignoring incomplete condition after 'and'
      • Missing variable in second condition
      5. You want to check if a number n is between 10 and 20 (inclusive) or exactly 0. Which condition correctly uses logical operators?
      hard
      A. not (n < 10 or n > 20) and n == 0
      B. n >= 10 and (n <= 20 or n == 0)
      C. (n >= 10 and n <= 20) or n == 0
      D. n >= 10 or n <= 20 and n == 0

      Solution

      1. Step 1: Understand the condition requirements

        The number n should be between 10 and 20 inclusive, or exactly 0.
      2. Step 2: Analyze each option

        (n >= 10 and n <= 20) or n == 0 correctly groups the range check with and and then uses or for the zero check.
        n >= 10 and (n <= 20 or n == 0) changes the logic, allowing n == 0 to be combined incorrectly.
        n >= 10 or n <= 20 and n == 0 mixes operators without parentheses, causing wrong logic.
        not (n < 10 or n > 20) and n == 0 incorrectly requires n to be zero and in the range simultaneously.
      3. Final Answer:

        (n >= 10 and n <= 20) or n == 0 -> Option C
      4. Quick Check:

        Range check with 'and', zero check with 'or' [OK]
      Hint: Group range with 'and', combine with 'or' for zero [OK]
      Common Mistakes:
      • Wrong operator precedence
      • Misplacing parentheses
      • Combining conditions incorrectly