1
Which keyword is used to define a function in Python?
A. func
B. def
C. function
D. define
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. create my_func():
B. def my_func[]:
C. def my_func():
D. function 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 returns False
B. It returns 0
C. It throws an error
D. It returns None
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. 4
B. Error
C. 3.99
D. 3
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 Coercion
B. Type Casting
C. Type Definition
D. Type Check
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. mathematics
B. sys
C. math
D. calc
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 'str'>
B. <class 'number'>
C. <class 'int'>
D. <class 'float'>
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. Arguments
B. Literals
C. Operators
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. Arguments
B. Variables
C. Keywords
D. Parameters
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 most complex version of the problem
B. The import statement
C. The first line of the function
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. ValueError
B. TypeError
C. SyntaxError
D. RecursionError
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. **kwargs
C. *args
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. kwargs{}
C. *args
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. 1010
B. 20
C. Error
D. 10 + 10
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. Universal
C. Static
D. Local
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.sqr(x, y)
B. math.pow(x, y)
C. math.exp(x, y)
D. math.power(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. 5
B. Error
C. 10
D. 15
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. None
B. 5
C. Error
D. 10
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. Positional arguments
C. Keyword arguments
D. Default 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 define a parameter
B. To exit the function and pass back a value
C. To print a value to the console
D. To repeat the function
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. Defining a function
B. Automatic conversion by the interpreter
C. Converting string to list
D. Conversion done manually by the programmer using functions like int()
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. Syntax errors
B. Compiler errors
C. Infinite recursion
D. Memory leaks
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. 1.618...
B. 3.14159...
C. 2.71828...
D. 1.414...
Correct Answer: 3.14159...
Explanation:
math.pi represents the mathematical constant π (pi).
29
What is the output of bool(0)?
A. 0
B. False
C. True
D. None
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. 5
B. True
C. False
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. calculate(5)
B. calculate[5]
C. def calculate(5)
D. call 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, only one value
B. No, it causes an error
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. A string passed as an argument
B. A string variable defined inside the function
C. An error message string
D. Documentation string appearing as the first statement in a 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. undefined
B. Error
C. 0
D. 1
Correct Answer: 1
Explanation:
Mathematically, 0! is defined as 1.
35
What is Indirect Recursion?
A. Function A calls Function A
B. Recursion without a return statement
C. Function A calls Function B, and Function B calls Function A
D. A function loop
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
B. 5.0
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. anon
B. lambda
C. def
D. func
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. Undefined
B. 0
C. None
D. Error
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. from math import sqrt
C. import math.sqrt
D. include math.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. Dictionary
B. List
C. Tuple
D. Set
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. Set
B. List
C. Dictionary
D. Tuple
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. count()
B. size()
C. len()
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. 2
B. 101
C. Error
D. 5
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 uses more memory (stack space)
B. Recursion is always slower
C. Recursion cannot solve math problems
D. Recursion is harder to write
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. Only if they are integers
B. No
C. Only in recursive functions
D. Yes
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. int()
B. asc()
C. chr()
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. chr()
B. char()
C. str()
D. ord()
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. 1000
B. 10000
C. 100
D. Unlimited
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.