Python uses colons and indentation to define blocks, as in option D.
What will this code print?
if False:
print('A')
else:
print('B')
AError
BA
CNothing
DB
✗ Incorrect
The condition is false, so the else block runs and prints 'B'.
Explain how Python decides which code to run in an if–else statement.
Think about the condition and the two possible paths.
You got /4 concepts.
Describe what happens if the if condition is false and there is no else block.
Consider what Python does when no alternative code is given.
You got /4 concepts.
Practice
(1/5)
1. What does an if-else statement do in Python?
easy
A. It chooses between two paths based on a condition.
B. It repeats code multiple times.
C. It defines a function.
D. It creates a list.
Solution
Step 1: Understand the purpose of if-else
An if-else statement lets the program decide which code to run based on a condition being true or false.
Step 2: Compare with other options
Repeating code is done by loops, functions define reusable code blocks, and lists store multiple items, so these are not correct.
Final Answer:
It chooses between two paths based on a condition. -> Option A
Quick Check:
If-else = choose path [OK]
Hint: If-else picks one of two paths based on condition [OK]
Common Mistakes:
Confusing if-else with loops
Thinking if-else creates data structures
Mixing if-else with function definitions
2. Which of the following is the correct syntax for an if-else statement in Python?
easy
A. if x > 0:
print('Positive')
else:
print('Non-positive')
B. if x > 0 then print('Positive') else print('Non-positive')
C. if (x > 0) { print('Positive'); } else { print('Non-positive'); }
D. if x > 0
print('Positive')
else
print('Non-positive')
Solution
Step 1: Recall Python if-else syntax
Python uses a colon after the condition and indentation for the code blocks.
Step 2: Check each option
if x > 0:
print('Positive')
else:
print('Non-positive') uses colons and indentation correctly. if x > 0 then print('Positive') else print('Non-positive') uses 'then' which is not Python syntax. if (x > 0) { print('Positive'); } else { print('Non-positive'); } uses braces and semicolons, which are for other languages. if x > 0
print('Positive')
else
print('Non-positive') misses colons and indentation.
Final Answer:
if x > 0:
print('Positive')
else:
print('Non-positive') -> Option A
Quick Check:
Colon + indent = correct if-else [OK]
Hint: Remember colons and indentation for if-else in Python [OK]
Common Mistakes:
Using 'then' keyword
Forgetting colons after if and else
Not indenting code blocks
3. What will be the output of this code?
age = 18
if age >= 18:
print('Adult')
else:
print('Minor')
medium
A. Minor
B. Adult
C. 18
D. No output
Solution
Step 1: Evaluate the condition age >= 18
Since age is 18, the condition age >= 18 is true.
Step 2: Determine which block runs
Because the condition is true, the code inside the if block runs, printing 'Adult'.
Final Answer:
Adult -> Option B
Quick Check:
Condition true -> print 'Adult' [OK]
Hint: Check if condition is true or false to pick output [OK]
Common Mistakes:
Assuming >= means less than
Printing else block by mistake
Confusing output with variable value
4. Find the error in this code:
num = 5
if num > 0
print('Positive')
else:
print('Non-positive')
medium
A. Variable 'num' is not defined
B. Wrong indentation on print statements
C. Missing colon ':' after 'if num > 0' line
D. 'else' should be 'elif' here
Solution
Step 1: Check syntax of if statement
The if statement must end with a colon ':' to mark the start of the block.
Step 2: Identify the missing colon
The code misses the colon after 'if num > 0', causing a syntax error.
Final Answer:
Missing colon ':' after 'if num > 0' line -> Option C
Quick Check:
Colon needed after if condition [OK]
Hint: Always put colon after if condition [OK]
Common Mistakes:
Forgetting colon after if
Confusing else with elif
Incorrect indentation
5. You want to write a program that prints 'Even' if a number is even, and 'Odd' if it is odd. Which code correctly uses if-else to do this?
hard
A. num = 4
if num % 2:
print('Even')
else:
print('Odd')
B. num = 4
if num / 2 == 0:
print('Even')
else:
print('Odd')
C. num = 4
if num % 2 != 0:
print('Even')
else:
print('Odd')
D. num = 4
if num % 2 == 0:
print('Even')
else:
print('Odd')
Solution
Step 1: Understand how to check even numbers
A number is even if dividing by 2 leaves no remainder, so num % 2 == 0 is true for even numbers.
Step 2: Check each option's condition
num = 4
if num % 2 == 0:
print('Even')
else:
print('Odd') correctly uses num % 2 == 0. num = 4
if num / 2 == 0:
print('Even')
else:
print('Odd') uses division instead of modulo, which is wrong. num = 4
if num % 2:
print('Even')
else:
print('Odd') treats nonzero remainder as even, which is incorrect. num = 4
if num % 2 != 0:
print('Even')
else:
print('Odd') reverses the logic.
Final Answer:
num = 4
if num % 2 == 0:
print('Even')
else:
print('Odd') -> Option D
Quick Check:
Modulo equals zero means even [OK]
Hint: Use 'num % 2 == 0' to check even numbers [OK]