Bird
Raised Fist0
Pythonprogramming~10 mins

If statement execution flow in Python - Interactive Code Practice

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
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to print 'Yes' if the number is greater than 10.

Python
number = 15
if number [1] 10:
    print("Yes")
Drag options to blanks, or click blank then click option'
A>
B<
C!=
D==
Attempts:
3 left
💡 Hint
Common Mistakes
Using '<' instead of '>' will check the wrong condition.
Using '==' checks equality, not greater than.
2fill in blank
medium

Complete the code to print 'Even' if the number is divisible by 2.

Python
number = 8
if number [1] 2 == 0:
    print("Even")
Drag options to blanks, or click blank then click option'
A%
B//
C**
D+
Attempts:
3 left
💡 Hint
Common Mistakes
Using '//' gives the quotient, not the remainder.
Using '**' is for powers, not division.
3fill in blank
hard

Fix the error in the if statement to correctly check if x is not equal to 5.

Python
x = 7
if x [1] 5:
    print("Not five")
Drag options to blanks, or click blank then click option'
A==
B!=
C=
D<>
Attempts:
3 left
💡 Hint
Common Mistakes
Using '=' instead of '!=' causes a syntax error.
Using '<>' is not supported in Python 3.
4fill in blank
hard

Fill both blanks to create a dictionary of words and their lengths, but only for words longer than 3 letters.

Python
words = ["apple", "cat", "banana", "dog"]
lengths = {word: [1] for word in words if len(word) [2] 3}
Drag options to blanks, or click blank then click option'
Alen(word)
B<=
C>
Dword
Attempts:
3 left
💡 Hint
Common Mistakes
Using '<=' includes words with length 3 or less.
Using 'word' instead of 'len(word)' gives the word itself, not its length.
5fill in blank
hard

Fill all three blanks to create a dictionary with uppercase keys and values only if the value is positive.

Python
data = {"a": 1, "b": -2, "c": 3}
result = [1]: [2] for k, v in data.items() if v [3] 0}
Drag options to blanks, or click blank then click option'
Ak.upper()
Bv
C>
Dk
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'k' instead of 'k.upper()' keeps keys lowercase.
Using '<' instead of '>' filters wrong values.

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