1
Which keyword is used to define a function in Python?
A. define
B. func
C. function
D. def
Correct Answer: def
Explanation:
In Python, the 'def' keyword is used to start the definition of a function.
2
What is the correct syntax to define a function named 'my_func'?
A. def my_func():
B. function my_func():
C. def my_func[]:
D. create my_func():
Correct Answer: def my_func():
Explanation:
The correct syntax uses 'def', followed by the function name, parentheses (), and a colon :.
3
What happens when a function is called without a return statement?
A. It throws an error
B. It returns None
C. It returns False
D. It returns 0
Correct Answer: It returns None
Explanation:
In Python, if a function does not explicitly return a value, it implicitly returns 'None'.
4
What is the output of: int(3.99)?
A. 3.99
B. 3
C. Error
D. 4
Correct Answer: 3
Explanation:
The int() function truncates the decimal part of a float, returning the integer part.
5
The process of automatically converting one data type to another is known as?
A. Type Definition
B. Type Check
C. Type Coercion
D. Type Casting
Correct Answer: Type Coercion
Explanation:
Type Coercion is the automatic or implicit conversion of values from one data type to another (e.g., adding an int to a float results in a float).
6
Which standard library module contains mathematical functions like sin, cos, and sqrt?
A. math
B. calc
C. mathematics
D. sys
Correct Answer: math
Explanation:
The 'math' module provides access to the mathematical functions defined by the C standard.
7
What is the result of type(3 + 2.0)?
A. <class 'float'>
B. <class 'int'>
C. <class 'number'>
D. <class 'str'>
Correct Answer: <class 'float'>
Explanation:
When an integer is added to a float, Python coerces the integer to a float, resulting in a float.
8
In a function definition def func(a, b):, what are a and b called?
A. Operators
B. Arguments
C. Literals
D. Parameters
Correct Answer: Parameters
Explanation:
Variables defined in the function declaration are called parameters.
9
When calling func(10, 20), what are 10 and 20 called?
A. Variables
B. Arguments
C. Parameters
D. Keywords
Correct Answer: Arguments
Explanation:
The actual values passed to the function during a function call are called arguments.
10
What does the math.ceil(4.2) function return?
Correct Answer: 5
Explanation:
math.ceil(x) returns the smallest integer greater than or equal to x.
11
What does the math.floor(4.9) function return?
Correct Answer: 4
Explanation:
math.floor(x) returns the largest integer less than or equal to x.
12
What is a base case in recursion?
A. The first line of the function
B. The most complex version of the problem
C. The import statement
D. The condition that stops the recursion
Correct Answer: The condition that stops the recursion
Explanation:
A base case is a condition in a recursive function that stops the recursion by returning a value without making a recursive call.
13
What error occurs if a recursive function has no base case?
A. TypeError
B. ValueError
C. RecursionError
D. SyntaxError
Correct Answer: RecursionError
Explanation:
Infinite recursion leads to a stack overflow, which Python raises as a RecursionError: maximum recursion depth exceeded.
14
Which of the following allows a function to accept an arbitrary number of positional arguments?
A. *params
B. *args
C. **kwargs
D. args[]
Correct Answer: *args
Explanation:
The single asterisk * before a parameter name (conventionally *args) collects extra positional arguments into a tuple.
15
Which of the following allows a function to accept an arbitrary number of keyword arguments?
A. kwargs{}
B. *args
C. &kwargs
D. **kwargs
Correct Answer: **kwargs
Explanation:
The double asterisk ** before a parameter name (conventionally **kwargs) collects extra keyword arguments into a dictionary.
16
What is the output of str(10) + str(10)?
A. Error
B. 1010
C. 10 + 10
D. 20
Correct Answer: 1010
Explanation:
The str() function converts integers to strings. The + operator concatenates strings, resulting in '1010'.
17
What is the scope of a variable defined inside a function?
A. Global
B. Local
C. Universal
D. Static
Correct Answer: Local
Explanation:
Variables defined inside a function are local to that function and cannot be accessed outside it.
18
How do you define a global variable inside a function?
A. It is not possible
B. Declaring it in uppercase
C. Using the extern keyword
D. Using the global keyword
Correct Answer: Using the global keyword
Explanation:
The global keyword allows a user to modify a variable outside the current scope.
19
Which function is used to calculate x to the power of y in the math module?
A. math.power(x, y)
B. math.sqr(x, y)
C. math.pow(x, y)
D. math.exp(x, y)
Correct Answer: math.pow(x, y)
Explanation:
math.pow(x, y) returns x raised to the power of y as a float.
20
What is the output of abs(-7.5)?
Correct Answer: 7.5
Explanation:
The built-in abs() function returns the absolute (positive) value of a number.
21
Consider def f(x=10): return x. What is the result of f(5)?
A. Error
B. 10
C. 15
D. 5
Correct Answer: 5
Explanation:
The argument 5 overrides the default parameter value 10.
22
Consider def f(x=10): return x. What is the result of f()?
A. 10
B. 5
C. Error
D. None
Correct Answer: 10
Explanation:
Since no argument is provided, the default parameter value 10 is used.
23
What does math.sqrt(16) return?
Correct Answer: 4.0
Explanation:
math.sqrt() returns the square root as a float.
24
Which term describes passing arguments by name, like func(name='John')?
A. Variable arguments
B. Default arguments
C. Keyword arguments
D. Positional arguments
Correct Answer: Keyword arguments
Explanation:
Keyword arguments allow you to pass arguments using the parameter name.
25
What is the purpose of the return keyword?
A. To exit the function and pass back a value
B. To define a parameter
C. To repeat the function
D. To print a value to the console
Correct Answer: To exit the function and pass back a value
Explanation:
return exits the function execution and sends the specified value back to the caller.
26
What is explicit type conversion?
A. Automatic conversion by the interpreter
B. Conversion done manually by the programmer using functions like int()
C. Converting string to list
D. Defining a function
Correct Answer: Conversion done manually by the programmer using functions like int()
Explanation:
Explicit conversion (type casting) requires the programmer to specify the target type.
27
Recursive functions must move towards the base case to avoid:
A. Compiler errors
B. Memory leaks
C. Syntax errors
D. Infinite recursion
Correct Answer: Infinite recursion
Explanation:
If the recursive step doesn't reduce the problem size toward the base case, the function calls itself indefinitely.
28
Which mathematical constant is available as math.pi?
A. 2.71828...
B. 3.14159...
C. 1.414...
D. 1.618...
Correct Answer: 3.14159...
Explanation:
math.pi represents the mathematical constant π (pi).
29
What is the output of bool(0)?
A. False
B. 0
C. None
D. True
Correct Answer: False
Explanation:
In Python, the integer 0 is considered falsy, so bool(0) returns False.
30
What is the output of bool(5)?
A. True
B. False
C. 5
D. None
Correct Answer: True
Explanation:
Non-zero numbers are considered truthy in Python.
31
Which statement correctly calls a function named calculate with argument 5?
A. call calculate(5)
B. calculate(5)
C. def calculate(5)
D. calculate[5]
Correct Answer: calculate(5)
Explanation:
Functions are called by writing their name followed by parentheses containing the arguments.
32
Can a Python function return multiple values?
A. No, it causes an error
B. No, only one value
C. Yes, as a string only
D. Yes, as a tuple
Correct Answer: Yes, as a tuple
Explanation:
Python functions can return multiple values separated by commas, which are packed into a tuple.
33
What is a 'docstring' in a function?
A. Documentation string appearing as the first statement in a function
B. An error message string
C. A string passed as an argument
D. A string variable defined inside the function
Correct Answer: Documentation string appearing as the first statement in a function
Explanation:
A docstring is a string literal used to document a function, usually enclosed in triple quotes.
34
What is the factorial of 0 (math.factorial(0))?
A. Error
B. 0
C. 1
D. undefined
Correct Answer: 1
Explanation:
Mathematically, 0! is defined as 1.
35
What is Indirect Recursion?
A. A function loop
B. Recursion without a return statement
C. Function A calls Function A
D. Function A calls Function B, and Function B calls Function A
Correct Answer: Function A calls Function B, and Function B calls Function A
Explanation:
Indirect recursion occurs when functions call each other in a cycle.
36
What will float(5) return?
A. 5.0
B. 5
C. Integer 5
D. Error
Correct Answer: 5.0
Explanation:
The float() constructor converts the integer 5 to a floating-point number 5.0.
37
Which of the following creates an anonymous function?
A. lambda
B. func
C. def
D. anon
Correct Answer: lambda
Explanation:
The lambda keyword is used to create small, anonymous functions.
38
In the expression x = y = z = 0, what is the value of x?
A. 0
B. Undefined
C. Error
D. None
Correct Answer: 0
Explanation:
Python allows chained assignment; all variables are assigned the value 0.
39
What is the correct way to import only the sqrt function from the math module?
A. using math.sqrt
B. import math.sqrt
C. include math.sqrt
D. from math import sqrt
Correct Answer: from math import sqrt
Explanation:
The from ... import ... syntax allows importing specific attributes or functions from a module.
40
If a function definition uses *args, what is the data type of args inside the function?
A. Set
B. Dictionary
C. Tuple
D. List
Correct Answer: Tuple
Explanation:
*args collects positional arguments into a tuple.
41
If a function definition uses **kwargs, what is the data type of kwargs inside the function?
A. Dictionary
B. Tuple
C. List
D. Set
Correct Answer: Dictionary
Explanation:
**kwargs collects keyword arguments into a dictionary.
42
Which built-in function returns the length of a list or string?
A. len()
B. count()
C. size()
D. length()
Correct Answer: len()
Explanation:
len() is the standard built-in function to get the length of a sequence.
43
What is the result of int('101', 2)?
A. 5
B. 2
C. Error
D. 101
Correct Answer: 5
Explanation:
int() can take a second argument specifying the base. Binary '101' equals decimal 5.
44
What is the major disadvantage of using recursion over iteration?
A. Recursion cannot solve math problems
B. Recursion uses more memory (stack space)
C. Recursion is harder to write
D. Recursion is always slower
Correct Answer: Recursion uses more memory (stack space)
Explanation:
Each recursive call adds a new frame to the call stack, which consumes memory and can lead to stack overflow.
45
What is the output of: def func(a, b=5, c=10): return a + b + c followed by func(1, 2)?
Correct Answer: 13
Explanation:
a gets 1, b gets 2 (overriding default), c uses default 10. 1 + 2 + 10 = 13.
46
Can positional arguments follow keyword arguments in a function call?
A. No
B. Only in recursive functions
C. Yes
D. Only if they are integers
Correct Answer: No
Explanation:
In a function call, positional arguments must appear before keyword arguments.
47
Which function converts a character to its ASCII/Unicode integer value?
A. asc()
B. chr()
C. int()
D. ord()
Correct Answer: ord()
Explanation:
ord() takes a single character string and returns its integer code point.
48
Which function converts an integer ASCII/Unicode value to a character?
A. ord()
B. char()
C. chr()
D. str()
Correct Answer: chr()
Explanation:
chr() takes an integer and returns the corresponding string character.
49
What is the default recursion limit in Python usually set to?
A. Unlimited
B. 1000
C. 100
D. 10000
Correct Answer: 1000
Explanation:
The default recursion limit is typically 1000 to prevent infinite recursion from crashing the C stack.
50
What is the value of math.fmod(10, 3)?
Correct Answer: 1.0
Explanation:
math.fmod returns the floating-point remainder of division. 10 % 3 is 1.