Python For Loop MCQs (25)
Covers range(), iteration, break/continue, for–else, nested loops, and iteration over strings/dicts. Answers at the end
1) What is the output?
for i in range(3):
print(i, end=" ")
A. 0 1 2
B. 1 2 3
C. 0 1 2 3
D. 1 2
2) Output?
for ch in "py":
print(ch)
A. py
B. p⏎y
C. y⏎p
D. Error
3) What prints?
sum_ = 0
for n in range(1, 5):
sum_ += n
print(sum_)
A. 10
B. 15
C. 5
D. 9
4) Choose the output.
for i in range(2, 8, 3):
print(i, end="-")
A. 2-5-8-
B. 2-5-
C. 2-5-7-
D. 2-5-8-11-
5) What is printed?
for i in range(3, 0, -1):
print(i, end="")
A. 321
B. 012
C. 123
D. 32
6) Output?
count = 0
for _ in range(5):
if _ % 2 == 0:
count += 1
print(count)
A. 2
B. 3
C. 4
D. 5
7) What prints?
for i in range(4):
if i == 2:
break
print(i, end=" ")
A. 0 1
B. 0 1 2
C. 2 3
D. 0 1 2 3
8) Choose the output.
for i in range(4):
if i == 2:
continue
print(i, end=" ")
A. 0 1 3
B. 0 2 3
C. 1 2 3
D. 0 1 2
9) Output?
for i in range(3):
pass
print(i)
A. 0
B. 1
C. 2
D. NameError
10) What is printed?
nums = [1, 2, 3]
for x in nums:
x = x * 10
print(nums)
A. [10, 20, 30]
B. [1, 2, 3]
C. [1, 20, 3]
D. Error
11) Choose the output.
for i in range(2):
for j in range(2):
print(i + j, end=" ")
A. 0 1 1 2
B. 0 1 2 3
C. 0 1 0 1
D. 1 2 1 2
12) Output?
for i in range(3):
print("A")
else:
print("B")
A. A A A
B. A A A B
C. B only
D. Error
13) for–else behavior?
for i in range(3):
if i == 1:
break
else:
print("Done")
A. Prints “Done”
B. Prints nothing
C. Error
D. Prints i values then “Done”
14) What prints?
d = {"a": 1, "b": 2}
s = 0
for k in d:
s += d[k]
print(s)
A. 0
B. ab
C. 3
D. Error
15) Choose the output.
for i in range(0):
print("X")
else:
print("Y")
A. X Y
B. Y
C. (no output)
D. X
16) Output?
vals = [0, 2, 0, 3]
for v in vals:
if not v:
continue
print(v, end=" ")
A. 0 2 0 3
B. 2 3
C. 2 0 3
D. (no output)
17) What is printed?
x = range(1, 6, 2)
print(list(x))
A. [1, 3, 5]
B. [1, 2, 3, 4, 5]
C. [1, 3]
D. [3, 5]
18) Choose the output.
out = ""
for i in range(3):
out += str(i)
print(out)
A. 012
B. 123
C. 01
D. 23
19) Output?
for i in range(1, 4):
for j in range(i):
pass
print(j)
Note: value of j after the loops.
A. 0
B. 1
C. 2
D. NameError
20) What prints?
items = {"x": 1, "y": 2}.items()
for k, v in items:
print(k, v, end="; ")
A. x 1; y 2;
B. 1 x; 2 y;
C. (‘x’,1); (‘y’,2);
D. Error
21) Choose the output.
for i in range(5, 5):
print("A")
print("B")
A. A B
B. B
C. (no output)
D. A A A A A B
22) What is printed?
for i in range(-1, -5, -2):
print(i, end=" ")
A. -1 -2 -3 -4
B. -1 -3
C. -2 -4
D. (no output)
23) Output?
txt = "abba"
count = 0
for i in range(len(txt)-1):
if txt[i] == txt[i+1]:
count += 1
print(count)
A. 0
B. 1
C. 2
D. 3
24) Choose the output.
for i in range(3):
for j in range(3):
if i == j:
break
print(f"{i}{j}", end=" ")
A. 10 20 21
B. 01 02 10 12 20 21
C. 01 02 12 21
D. 01 02 10 20
25) What prints?
found = False
for n in [2, 4, 6]:
if n % 2:
found = True
break
else:
print("All even")
A. All even
B. True
C. False
D. No output
Answer Key
1) A
2) B
3) A
4) B
5) A
6) B
7) A
8) A
9) C
10) B
11) A
12) B
13) B
14) C
15) B
16) B
17) A
18) A
19) C
20) A
21) B
22) B
23) B
24) D
25) A