Bird
Raised Fist0
Pythonprogramming~5 mins

Logical operators in conditions 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 are the three main logical operators used in Python conditions?
The three main logical operators are and, or, and not. They help combine or invert conditions.
Click to reveal answer
beginner
How does the and operator work in a condition?
The and operator returns True only if both conditions are true. If either is false, the whole condition is false.
Click to reveal answer
beginner
Explain the behavior of the or operator in conditions.
The or operator returns True if at least one of the conditions is true. It returns False only if all conditions are false.
Click to reveal answer
beginner
What does the not operator do in a condition?
The not operator reverses the result of a condition. If the condition is true, not makes it false, and vice versa.
Click to reveal answer
beginner
Given the code:
if age >= 18 and has_id:
What does this condition check?
It checks if both conditions are true: the person is 18 or older and the person has an ID. Both must be true for the code inside the if to run.
Click to reveal answer
Which logical operator returns True only if both conditions are true?
Aand
Bor
Cnot
Dxor
What will the expression not (5 > 3) evaluate to?
ATrue
B3
C5
DFalse
Which operator would you use to check if at least one condition is true?
Aor
Band
Cnot
Dequals
What is the result of True and False?
ATrue
BFalse
CNone
DError
If condition = False, what does not condition evaluate to?
Acondition
BFalse
CTrue
DNone
Explain how the logical operators and, or, and not work in Python conditions.
Think about combining simple yes/no questions.
You got /3 concepts.
    Write a simple example using and and not in an if statement and explain what it checks.
    Use a real-life example like checking age and permission.
    You got /2 concepts.

      Practice

      (1/5)
      1. Which logical operator in Python means all conditions must be true for the whole expression to be true?
      easy
      A. xor
      B. and
      C. not
      D. or

      Solution

      1. Step 1: Understand the meaning of 'and'

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

        or needs only one true condition, not reverses truth, and xor is not a Python keyword.
      3. Final Answer:

        and -> Option B
      4. Quick Check:

        All conditions true = and [OK]
      Hint: Remember: 'and' means all must be true [OK]
      Common Mistakes:
      • Confusing 'and' with 'or'
      • Thinking 'not' means all true
      • Using 'xor' which is not a Python keyword
      2. Which of the following is the correct syntax to check if variable x is NOT equal to 10 and variable y is greater than 5?
      easy
      A. if x != 10 and y > 5:
      B. if x <> 10 and y > 5:
      C. if x != 10 & y > 5:
      D. if x != 10 or y > 5:

      Solution

      1. Step 1: Check the inequality operator

        != is the correct 'not equal' operator in Python; <> is invalid syntax.
      2. Step 2: Check logical operator usage

        and correctly combines two conditions; & is a bitwise operator and or changes logic.
      3. Final Answer:

        if x != 10 and y > 5: -> Option A
      4. Quick Check:

        Correct inequality and 'and' syntax [OK]
      Hint: Use '!=' for not equal and 'and' to combine conditions [OK]
      Common Mistakes:
      • Using '<>' instead of '!='
      • Using '&' instead of 'and'
      • Using 'or' when 'and' is needed
      3. What will be the output of this code?
      age = 20
      has_id = False
      if age >= 18 and has_id:
          print('Allowed')
      else:
          print('Denied')
      medium
      A. SyntaxError
      B. Allowed
      C. Denied
      D. No output

      Solution

      1. Step 1: Evaluate each condition

        age >= 18 is True since 20 >= 18, but has_id is False.
      2. Step 2: Apply 'and' operator

        True and False is False, so the else block runs.
      3. Final Answer:

        Denied -> Option C
      4. Quick Check:

        True and False = False [OK]
      Hint: Both conditions must be true for 'and' to print Allowed [OK]
      Common Mistakes:
      • Assuming one True is enough with 'and'
      • Confusing 'and' with 'or'
      • Ignoring boolean value of variables
      4. Find the error in this code snippet:
      if not x > 10 or y < 5
          print('Check passed')
      medium
      A. Missing colon ':' after condition
      B. Wrong use of 'not' operator
      C. Incorrect indentation
      D. Using 'or' instead of 'and'

      Solution

      1. Step 1: Check syntax of if statement

        Python requires a colon ':' at the end of the if condition line.
      2. Step 2: Review other parts

        The use of not and or is correct; indentation is not shown as wrong here.
      3. Final Answer:

        Missing colon ':' after condition -> Option A
      4. Quick Check:

        if statements need ':' [OK]
      Hint: Always put ':' after if condition [OK]
      Common Mistakes:
      • Forgetting ':' after if
      • Misusing 'not' operator
      • Wrong indentation without colon
      5. You want to check if a number n is either less than 0 or greater than 100, but NOT equal to -10. Which condition correctly uses logical operators?
      hard
      A. if n < 0 or (n > 100 and n != -10):
      B. if n < 0 and n > 100 or n != -10:
      C. if not (n < 0 or n > 100) and n == -10:
      D. if (n < 0 or n > 100) and n != -10:

      Solution

      1. Step 1: Understand the condition requirements

        We want numbers less than 0 or greater than 100, but exclude -10.
      2. Step 2: Analyze each option

        if (n < 0 or n > 100) and n != -10: correctly groups the or condition and excludes -10 with and n != -10. if n < 0 or (n > 100 and n != -10): excludes -10 only when >100, not <0 (e.g., n=-10 is true). if not (n < 0 or n > 100) and n == -10: reverses logic and checks for equal -10. if n < 0 and n > 100 or n != -10: mixes and/or incorrectly.
      3. Final Answer:

        if (n < 0 or n > 100) and n != -10: -> Option D
      4. Quick Check:

        Group or, then exclude -10 with and [OK]
      Hint: Group or conditions, then exclude with and [OK]
      Common Mistakes:
      • Wrong grouping of conditions
      • Misplacing 'not' or 'and'
      • Confusing '!=' with '=='