Bird
Raised Fist0
Pythonprogramming~5 mins

If statement execution flow in Python - Time & Space Complexity

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
Time Complexity: If statement execution flow
O(1)
Understanding Time Complexity

We want to see how the time it takes to run an if statement changes as the input changes.

Specifically, does checking conditions take more time when inputs grow?

Scenario Under Consideration

Analyze the time complexity of the following code snippet.

def check_number(num):
    if num > 0:
        return "Positive"
    elif num == 0:
        return "Zero"
    else:
        return "Negative"

This code checks if a number is positive, zero, or negative and returns a string accordingly.

Identify Repeating Operations

Identify the loops, recursion, array traversals that repeat.

  • Primary operation: Single if-elif-else condition check
  • How many times: Exactly once per function call
How Execution Grows With Input

Checking the condition happens once no matter the input size.

Input Size (n)Approx. Operations
101 check
1001 check
10001 check

Pattern observation: The number of operations stays the same even if the input number changes.

Final Time Complexity

Time Complexity: O(1)

This means the time to run the if statement does not grow with input size; it stays constant.

Common Mistake

[X] Wrong: "If statements take longer when numbers get bigger because there are more checks."

[OK] Correct: The if statement only checks conditions once per call, no matter how big the number is.

Interview Connect

Understanding that simple condition checks run in constant time helps you explain how your code handles decisions efficiently.

Self-Check

"What if we added a loop that runs the if statement multiple times? How would the time complexity change?"

Practice

(1/5)
1. What does an if statement do in Python?
easy
A. It stores data in a list.
B. It repeats code multiple times.
C. It runs code only if a condition is true.
D. It defines a new function.

Solution

  1. Step 1: Understand the purpose of if

    An if statement checks a condition and runs code only if that condition is true.
  2. Step 2: Compare with other options

    Repeating code is done by loops, storing data is done by lists, and defining functions uses def.
  3. Final Answer:

    It runs code only if a condition is true. -> Option C
  4. Quick Check:

    if runs code if condition true [OK]
Hint: If checks condition; runs code only when true [OK]
Common Mistakes:
  • Confusing if with loops
  • Thinking if stores data
  • Mixing if with function definition
2. Which of the following is the correct syntax for an if statement in Python?
easy
A. if x > 5 then:
B. if x > 5:
C. if (x > 5) {}
D. if x > 5 then

Solution

  1. Step 1: Recall Python if syntax

    Python uses a colon : after the condition and no parentheses or 'then'.
  2. Step 2: Check each option

    if x > 5: uses if x > 5: which is correct. Others use 'then' or braces which are not Python syntax.
  3. Final Answer:

    if x > 5: -> Option B
  4. Quick Check:

    Python if ends with colon [OK]
Hint: Python if ends with colon, no 'then' or braces [OK]
Common Mistakes:
  • Adding 'then' after condition
  • Using braces {} like other languages
  • Forgetting the colon at the end
3. What will be the output of this code?
age = 20
if age < 18:
    print("Child")
elif age < 65:
    print("Adult")
else:
    print("Senior")
medium
A. Adult
B. Senior
C. Child
D. No output

Solution

  1. Step 1: Check the value of age

    The variable age is 20.
  2. Step 2: Evaluate conditions in order

    First condition age < 18 is false (20 is not less than 18). Second condition age < 65 is true (20 is less than 65), so it prints "Adult" and skips the else.
  3. Final Answer:

    Adult -> Option A
  4. Quick Check:

    20 is less than 65, prints Adult [OK]
Hint: Check conditions top to bottom; first true runs [OK]
Common Mistakes:
  • Printing Child for age 20
  • Ignoring elif and jumping to else
  • Thinking no output if first condition false
4. Find the error in this code:
score = 75
if score >= 90
    print("Excellent")
elif score >= 60:
    print("Pass")
else:
    print("Fail")
medium
A. score variable not defined
B. Wrong indentation on print statements
C. Using elif instead of else if
D. Missing colon after first if condition

Solution

  1. Step 1: Check syntax of if statement

    The first if line is missing a colon : at the end, which is required in Python.
  2. Step 2: Verify other parts

    Indentation and elif usage are correct. The variable score is defined.
  3. Final Answer:

    Missing colon after first if condition -> Option D
  4. Quick Check:

    Every if needs a colon [OK]
Hint: Check colons after all if/elif/else lines [OK]
Common Mistakes:
  • Forgetting colon after if condition
  • Confusing elif with else if syntax
  • Incorrect indentation of print lines
5. You want to print "Positive", "Zero", or "Negative" based on a number's value. Which code correctly uses if, elif, and else to do this?
hard
A. if num > 0: print("Positive") elif num == 0: print("Zero") else: print("Negative")
B. if num > 0: print("Positive") if num == 0: print("Zero") else: print("Negative")
C. if num > 0: print("Positive") else if num == 0: print("Zero") else: print("Negative")
D. if num > 0: print("Positive") elif num < 0: print("Zero") else: print("Negative")

Solution

  1. Step 1: Understand correct if-elif-else structure

    Use if for first condition, elif for the second, and else for all other cases.
  2. Step 2: Check each option

    if num > 0: print("Positive") elif num == 0: print("Zero") else: print("Negative") correctly uses elif and else. if num > 0: print("Positive") if num == 0: print("Zero") else: print("Negative") uses two separate if statements which can cause multiple prints. if num > 0: print("Positive") else if num == 0: print("Zero") else: print("Negative") uses invalid syntax else if. if num > 0: print("Positive") elif num < 0: print("Zero") else: print("Negative")'s elif num < 0 will print "Zero" for negative numbers and "Negative" for zero incorrectly.
  3. Final Answer:

    if num > 0: print("Positive") elif num == 0: print("Zero") else: print("Negative") -> Option A
  4. Quick Check:

    Use if, elif, else for exclusive conditions [OK]
Hint: Use if, elif, else for clear exclusive choices [OK]
Common Mistakes:
  • Using multiple separate ifs causing multiple outputs
  • Writing else if instead of elif
  • Overlapping conditions causing wrong output