1
What is the result of the expression 23 % 5 in Python?
Reveal Answer
Hide Answer
Correct Answer: 3
Explanation:
The modulus operator (%) returns the remainder of the division. 23 divided by 5 is 4 with a remainder of 3.
2
Which Python module must be imported to generate random numbers?
A. random
B. math
C. stats
D. rand
Reveal Answer
Hide Answer
Correct Answer: random
Explanation:
The 'random' module is the standard Python module used to generate pseudo-random numbers.
3
What is the output of the following code?
print(type(3 < 5))
A. <class 'str'>
B. <class 'float'>
C. <class 'int'>
D. <class 'bool'>
Reveal Answer
Hide Answer
Correct Answer: <class 'bool'>
Explanation:
The expression 3 < 5 evaluates to True, which is a Boolean value.
4
Which logical operator returns True only if both operands are True?
A. or
B. xor
C. and
D. not
Reveal Answer
Hide Answer
Correct Answer: and
Explanation:
The 'and' operator requires both conditions on its left and right to be True to return True.
5
What is the result of: True or False and False?
A. True
B. False
C. None
D. Error
Reveal Answer
Hide Answer
Correct Answer: True
Explanation:
The 'and' operator has higher precedence than 'or'. False and False is False. Then, True or False is True.
6
In Python, what does the function random.randint(1, 10) return?
A. An integer between 1 and 10 (inclusive)
B. A float between 1 and 10
C. An integer between 1 and 9
D. An integer between 0 and 10
Reveal Answer
Hide Answer
Correct Answer: An integer between 1 and 10 (inclusive)
Explanation:
Unlike range(), random.randint(a, b) includes both endpoints a and b.
7
What is the correct syntax for a conditional statement in Python?
A. if x > 5:
B. if x > 5 then:
C. if x > 5;
D. if (x > 5) { }
Reveal Answer
Hide Answer
Correct Answer: if x > 5:
Explanation:
Python uses the keyword 'if', followed by the condition, and ends with a colon.
8
What signifies a block of code belonging to an if-statement in Python?
A. Curly braces {}
B. Parentheses ()
C. Indentation
D. Semicolons
Reveal Answer
Hide Answer
Correct Answer: Indentation
Explanation:
Python relies on indentation (whitespace) to define scope and blocks of code.
9
What will be the output of the following code?
x = 10
if x > 5:
print('A')
elif x > 8:
print('B')
else:
print('C')
A. B
B. C
C. A
D. A and B
Reveal Answer
Hide Answer
Correct Answer: A
Explanation:
Python executes the first True condition in an if-elif chain. Since 10 > 5 is True, it prints 'A' and skips the rest.
10
Which statement allows you to check multiple conditions in a single if-block structure?
A. elseif
B. elif
C. else
D. then
Reveal Answer
Hide Answer
Correct Answer: elif
Explanation:
The 'elif' (short for else if) keyword allows checking subsequent conditions if the previous ones were False.
11
What is a nested conditional?
A. A loop inside an if statement
B. An if statement inside another if statement
C. A conditional statement that returns a list
D. A condition that uses the 'and' operator
Reveal Answer
Hide Answer
Correct Answer: An if statement inside another if statement
Explanation:
Nesting occurs when one control structure is placed inside the block of another, such as an if inside an if.
12
What is the output of -5 % 2 in Python?
Reveal Answer
Hide Answer
Correct Answer: 1
Explanation:
In Python, the sign of the remainder matches the divisor. -5 divided by 2 is -3 remainder 1 (-3 * 2 + 1 = -5).
13
Which loop is best used when the number of iterations is not known in advance?
A. repeat loop
B. do-while loop
C. while loop
D. for loop
Reveal Answer
Hide Answer
Correct Answer: while loop
Explanation:
A while loop continues running as long as a specific condition remains True, making it ideal for indefinite iteration.
14
How many times will the following loop execute?
i = 0
while i < 3:
print(i)
i += 1
A. 2 times
B. 3 times
C. Infinite
D. 4 times
Reveal Answer
Hide Answer
Correct Answer: 3 times
Explanation:
The loop runs for i=0, i=1, and i=2. When i becomes 3, the condition 3 < 3 is False.
15
What does the 'break' statement do inside a loop?
A. Pauses the loop
B. Terminates the loop immediately
C. Skips the current iteration
D. Restarts the loop
Reveal Answer
Hide Answer
Correct Answer: Terminates the loop immediately
Explanation:
The break statement exits the nearest enclosing loop immediately, skipping any remaining code in the block.
16
What is the output of the following?
for i in range(3):
print(i, end=' ')
A. 1 2 3
B. 0 1 2 3
C. 1 2
D. 0 1 2
Reveal Answer
Hide Answer
Correct Answer: 0 1 2
Explanation:
range(3) generates numbers from 0 up to (but not including) 3.
17
Which parameters does range(start, stop, step) take?
A. start, stop, increment
B. start, end, jump
C. start, length, step
D. start, stop, decrement
Reveal Answer
Hide Answer
Correct Answer: start, stop, increment
Explanation:
The third argument in range() is the step (or increment) value.
18
What is the result of range(10, 5, -2) when converted to a list?
A. [10, 8, 6, 4]
B. [10, 8, 6]
C. []
D. [10, 9, 8, 7, 6]
Reveal Answer
Hide Answer
Correct Answer: [10, 8, 6]
Explanation:
It starts at 10 and decreases by 2 until it reaches (but does not include) 5. The sequence is 10, 8, 6.
19
In a nested loop, which loop completes its iterations first?
A. It depends on the condition
B. They complete simultaneously
C. The inner loop
D. The outer loop
Reveal Answer
Hide Answer
Correct Answer: The inner loop
Explanation:
For every single iteration of the outer loop, the inner loop runs to completion.
20
What is the output of this nested loop?
for i in range(2):
for j in range(2):
print(i + j, end='')
A. 1234
B. 0112
C. 0123
D. 0011
Reveal Answer
Hide Answer
Correct Answer: 0112
Explanation:
Iterations: (i=0,j=0 -> 0), (i=0,j=1 -> 1), (i=1,j=0 -> 1), (i=1,j=1 -> 2). Result: 0112.
21
What is 'Encapsulation' in the context of basic programming structures?
A. Writing all code in one line
B. Running a loop infinitely
C. Wrapping a piece of code (like a loop or conditional) into a function
D. Deleting variables
Reveal Answer
Hide Answer
Correct Answer: Wrapping a piece of code (like a loop or conditional) into a function
Explanation:
Encapsulation involves enclosing a set of instructions within a function to isolate logic and hide complexity.
22
What does 'Generalization' mean when refactoring code?
A. Removing all comments
B. Making code specific to one problem
C. Replacing variables with constants
D. Adding parameters to a function to make it applicable to a wider range of problems
Reveal Answer
Hide Answer
Correct Answer: Adding parameters to a function to make it applicable to a wider range of problems
Explanation:
Generalization involves replacing specific values (literals) with variables (parameters) so the code can handle various inputs.
23
What happens if you forget to increment the counter variable in a standard while loop?
A. The loop runs once
B. The loop will not run
C. Infinite Loop
D. Syntax Error
Reveal Answer
Hide Answer
Correct Answer: Infinite Loop
Explanation:
If the condition remains True forever because the variable is never updated, the loop never terminates.
24
What does the function random.random() return?
A. An integer between 0 and 1
B. A float between 0.0 and 100.0
C. A float between 0.0 and 1.0 (excluding 1.0)
D. A random boolean
Reveal Answer
Hide Answer
Correct Answer: A float between 0.0 and 1.0 (excluding 1.0)
Explanation:
random.random() returns a floating-point number in the range [0.0, 1.0).
25
Which keyword is used to skip the rest of the code in the current loop iteration and return to the top?
A. break
B. return
C. pass
D. continue
Reveal Answer
Hide Answer
Correct Answer: continue
Explanation:
The 'continue' statement stops the current iteration and jumps back to the loop condition check for the next iteration.
26
What is the truth value of the integer 0 in Python Boolean expressions?
A. None
B. Undefined
C. True
D. False
Reveal Answer
Hide Answer
Correct Answer: False
Explanation:
In Python, integer 0 is considered 'falsy'. Non-zero integers are 'truthy'.
27
If x = 10 and y = 20, which expression evaluates to True?
A. not(x < y)
B. x > y
C. x == y
D. x != y
Reveal Answer
Hide Answer
Correct Answer: x != y
Explanation:
10 is not equal to 20, so x != y is True.
28
Which of the following is a correct way to generate a random choice from a list?
A. random.pick(list)
B. random.choice(list)
C. list.random()
D. random.select(list)
Reveal Answer
Hide Answer
Correct Answer: random.choice(list)
Explanation:
random.choice(sequence) returns a random element from a non-empty sequence.
29
What is the purpose of the 'pass' statement in a conditional or loop?
A. Stops the program
B. Skips to the next loop
C. It is a null operation; nothing happens
D. Returns a value
Reveal Answer
Hide Answer
Correct Answer: It is a null operation; nothing happens
Explanation:
The pass statement is a placeholder used when a statement is required syntactically but no code needs to be executed.
30
How many stars () will be printed?
for i in range(3):
for j in range(2):
print(' ')
Reveal Answer
Hide Answer
Correct Answer: 6
Explanation:
The outer loop runs 3 times. For each outer iteration, the inner loop runs 2 times. Total = 3 * 2 = 6.
31
Which operator is used to check for equality?
Reveal Answer
Hide Answer
Correct Answer: ==
Explanation:
The '==' operator compares two values for equality. The '=' operator is for assignment.
32
Which of the following loops is generally preferred for iterating over a list?
A. infinite loop
B. while loop
C. nested while
D. for loop
Reveal Answer
Hide Answer
Correct Answer: for loop
Explanation:
For loops are designed to iterate over sequences (like lists or strings) directly.
33
What is the value of x after execution?
x = 0
while x < 5:
x = x + 2
Reveal Answer
Hide Answer
Correct Answer: 6
Explanation:
Steps: 0->2, 2->4, 4->6. When x is 6, 6 < 5 is False, so the loop stops.
34
In Python, can an 'else' clause be used with a 'for' loop?
A. Yes, it executes before the loop starts
B. No, never
C. Yes, it executes if the loop completes normally
D. Yes, it executes only if the loop breaks
Reveal Answer
Hide Answer
Correct Answer: Yes, it executes if the loop completes normally
Explanation:
A loop's 'else' block runs only if the loop finishes without encountering a 'break' statement.
35
What is the output of: not (5 > 4 or 3 < 2)?
A. True
B. False
C. None
D. Error
Reveal Answer
Hide Answer
Correct Answer: False
Explanation:
(5 > 4) is True. (3 < 2) is False. True or False is True. 'not True' is False.
36
Which statement best describes the 'modulus' operator applied to a float (e.g., 5.5 % 2)?
A. It returns the quotient
B. It returns the remainder as a float
C. It causes an error
D. It converts inputs to integers first
Reveal Answer
Hide Answer
Correct Answer: It returns the remainder as a float
Explanation:
Python supports modulus with floats. 5.5 % 2 results in 1.5.
37
Using random numbers in a loop to simulate a process many times (e.g., coin flips) is often called:
A. Monte Carlo simulation
B. Debugging
C. Infinite recursion
D. Encapsulation
Reveal Answer
Hide Answer
Correct Answer: Monte Carlo simulation
Explanation:
Monte Carlo simulations rely on repeated random sampling to obtain numerical results.
38
What does random.randrange(0, 10, 3) generate?
A. 0, 1, 2, 3
B. A random number from {0, 3, 6, 9}
C. A random number from {0, 3, 6, 9, 10}
D. Any number 0-10
Reveal Answer
Hide Answer
Correct Answer: A random number from {0, 3, 6, 9}
Explanation:
randrange follows start, stop, step logic. It selects a random value from the generated sequence.
39
Consider the following:
if condition:
if nested_condition:
do_something()
This is equivalent to:
A. if not condition: do_something()
B. if condition or nested_condition: do_something()
C. while condition: do_something()
D. if condition and nested_condition: do_something()
Reveal Answer
Hide Answer
Correct Answer: if condition and nested_condition: do_something()
Explanation:
Nested ifs where the second relies on the first can often be flattened using the 'and' operator.
40
What happens if you compare a string and an integer (e.g., '5' > 3) in Python 3?
A. Returns True
B. Returns False
C. TypeError
D. Converts string to int automatically
Reveal Answer
Hide Answer
Correct Answer: TypeError
Explanation:
Python 3 does not support ordering comparisons between incompatible types like string and integer.
41
Which of these is a valid use of a boolean flag in a while loop?
A. Using the modulus operator
B. Using 'break' inside a for loop
C. Using a variable set to True/False to control the while condition
D. Using a random number
Reveal Answer
Hide Answer
Correct Answer: Using a variable set to True/False to control the while condition
Explanation:
Flags are Boolean variables used to signal a condition (like 'running = True') to control loop termination.
42
What is the correct syntax to output a random float between 2.5 and 5.5?
A. random.float(2.5, 5.5)
B. random.uniform(2.5, 5.5)
C. random.randint(2.5, 5.5)
D. random.range(2.5, 5.5)
Reveal Answer
Hide Answer
Correct Answer: random.uniform(2.5, 5.5)
Explanation:
random.uniform(a, b) returns a random floating point number N such that a <= N <= b.
43
How does a 'nested while' loop behave?
A. The outer loop finishes before the inner loop starts
B. It is not allowed in Python
C. The inner loop restarts from the beginning for each iteration of the outer loop
D. Both loops share the same variables automatically
Reveal Answer
Hide Answer
Correct Answer: The inner loop restarts from the beginning for each iteration of the outer loop
Explanation:
Just like nested for loops, the inner while loop runs its full course for every single iteration of the outer while loop.
44
Which operator implies logical negation?
Reveal Answer
Hide Answer
Correct Answer: not
Explanation:
Python uses the English word 'not' for logical negation.
45
What is the output of the following code snippet?
count = 0
while count < 5:
if count == 3:
break
print(count, end='')
count += 1
A. 3
B. 0123
C. 012
D. 01234
Reveal Answer
Hide Answer
Correct Answer: 012
Explanation:
The loop prints 0, 1, 2. When count reaches 3, the break statement executes, exiting the loop before printing 3.
46
Why might you wrap a complex conditional logic inside a function (Encapsulation)?
A. To improve readability and reuse
B. To increase file size
C. To make the code slower
D. To confuse the user
Reveal Answer
Hide Answer
Correct Answer: To improve readability and reuse
Explanation:
Encapsulation hides complexity and gives the logic a meaningful name, making the main code easier to read and the logic reusable.
47
What defines an 'infinite loop'?
A. A loop inside another loop
B. A loop whose condition never evaluates to False
C. A loop that uses random numbers
D. A loop with a high number of iterations
Reveal Answer
Hide Answer
Correct Answer: A loop whose condition never evaluates to False
Explanation:
An infinite loop lacks a functional termination condition, causing it to run indefinitely.
48
When using random numbers to test a loop logic, what is a seed used for?
A. To make the random numbers predictable and reproducible
B. To generate true random numbers
C. To encrypt the code
D. To speed up the computer
Reveal Answer
Hide Answer
Correct Answer: To make the random numbers predictable and reproducible
Explanation:
random.seed() initializes the random number generator, ensuring the same sequence of numbers is produced for debugging.
49
What is the value of (10 % 3) ** 2?
Reveal Answer
Hide Answer
Correct Answer: 1
Explanation:
Operator precedence handles modulus first, then exponentiation. 10 % 3 = 1. 1 ** 2 = 1.
50
Which variable name is used by convention for a 'throwaway' variable in a for loop?
A. _ (underscore)
B. i
C. var
D. temp
Reveal Answer
Hide Answer
Correct Answer: _ (underscore)
Explanation:
In Python, the underscore (_) is conventionally used as a loop variable when the variable's value is not actually used inside the loop.