Jump into concepts and practice - no test required
or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Recall & Review
beginner
What is the basic syntax to define a function in Python?
Use the def keyword, followed by the function name, parentheses (), and a colon :. Then indent the function body below. Example:
def my_function():
print("Hello")
Click to reveal answer
beginner
What does the return statement do inside a function?
It sends a value back to where the function was called. This lets the function give back a result. Without return, the function returns None by default.
Click to reveal answer
beginner
Can a Python function have parameters? How are they used?
Yes, parameters are names inside the parentheses in the function definition. They act like placeholders for values you give when calling the function. Example:
def greet(name):
print(f"Hello, {name}!")
Click to reveal answer
intermediate
What happens if you call a function without parentheses?
You get a reference to the function itself, not the result of running it. To run the function and get its output, you must use parentheses, even if empty.
Click to reveal answer
beginner
Why is indentation important in Python function definitions?
Indentation shows which lines belong inside the function. Python uses indentation instead of braces. Without correct indentation, Python will give an error or run code incorrectly.
Click to reveal answer
Which keyword is used to define a function in Python?
Adefine
Bfunction
Cfunc
Ddef
✗ Incorrect
The correct keyword to define a function in Python is def.
What will this function return if called without a return statement?
def add(a, b):
c = a + b
AThe sum of a and b
BNone
CAn error
Da + b as a string
✗ Incorrect
Without a return statement, Python functions return None by default.
How do you call a function named say_hello with no parameters?
Asay_hello()
Bsay_hello
Ccall say_hello
Ddef say_hello()
✗ Incorrect
You call a function by writing its name followed by parentheses, even if empty.
What is the purpose of parameters in a function?
ATo return values from the function
BTo store the function's name
CTo hold values passed into the function
DTo indent the function body
✗ Incorrect
Parameters are placeholders for values you pass into the function when calling it.
Why must the function body be indented in Python?
ABecause Python uses indentation to group code blocks
BTo separate the function from other code
CTo make the code look pretty
DTo add comments inside the function
✗ Incorrect
Python uses indentation to know which lines belong inside the function or other blocks.
Explain how to define a simple function in Python that takes one parameter and returns a value.
Think about the parts you need to write a function that gives back a result.
You got /6 concepts.
Describe why indentation is important in Python function definitions and what happens if it is missing.
Consider how Python knows which lines belong inside the function.
You got /4 concepts.
Practice
(1/5)
1. What keyword do you use to start defining a function in Python?
easy
A. function
B. define
C. func
D. def
Solution
Step 1: Recall Python function syntax
In Python, functions are defined using the keyword def.
Step 2: Compare options
Only def uses the correct keyword def. Others are not valid Python keywords.
Final Answer:
def -> Option D
Quick Check:
Function definition starts with def [OK]
Hint: Remember: def starts every function in Python [OK]
Common Mistakes:
Using 'function' instead of 'def'
Using 'func' or 'define' which are not Python keywords
2. Which of the following is the correct syntax to define a function named greet that takes no parameters?
easy
A. def greet():
B. function greet():
C. def greet[]:
D. def greet:
Solution
Step 1: Check function header syntax
The correct syntax uses def, function name, parentheses for parameters, and a colon.
Step 2: Validate each option
def greet(): matches this exactly: def greet():. Others have wrong keywords, brackets, or missing parentheses.
Final Answer:
def greet(): -> Option A
Quick Check:
def + name + () + : is correct syntax [OK]
Hint: Function name + () + : after def is always needed [OK]
Common Mistakes:
Omitting parentheses after function name
Using square brackets instead of parentheses
Using 'function' keyword instead of 'def'
3. What will be the output of this code?
def add(x, y):
return x + y
print(add(3, 4))
medium
A. 7
B. 34
C. TypeError
D. None
Solution
Step 1: Understand function behavior
The function add takes two numbers and returns their sum.
Step 2: Calculate the return value
Calling add(3, 4) returns 3 + 4 = 7, which is printed.
Final Answer:
7 -> Option A
Quick Check:
3 + 4 = 7 [OK]
Hint: Return sends back the sum; print shows it [OK]
Common Mistakes:
Concatenating numbers as strings (getting '34')
Forgetting to return value (getting None)
Passing wrong number of arguments causing TypeError
4. Find the error in this function definition:
def multiply(a, b)
return a * b
medium
A. Indentation error in return statement
B. Missing colon at the end of function header
C. Wrong function name
D. Parameters should be in square brackets
Solution
Step 1: Check function header syntax
The function header must end with a colon (:).
Step 2: Identify missing colon
The code misses the colon after def multiply(a, b), causing a syntax error.
Final Answer:
Missing colon at the end of function header -> Option B
Quick Check:
Function header must end with : [OK]
Hint: Always put : after function header line [OK]
Common Mistakes:
Forgetting colon after function header
Incorrect indentation of return line
Using wrong brackets for parameters
5. You want to write a function is_even that returns True if a number is even, otherwise False. Which is the correct function?
hard
A. def is_even(n):
return n % 2
B. def is_even(n):
return n / 2 == 0
C. def is_even(n):
if n % 2 == 0:
return True
else:
return False
D. def is_even(n):
if n % 2:
return True
else:
return False
Solution
Step 1: Understand even number check
A number is even if remainder when divided by 2 is zero (n % 2 == 0).
Step 2: Evaluate each option
def is_even(n):
if n % 2 == 0:
return True
else:
return False correctly returns True if remainder is zero, else False. def is_even(n):
return n / 2 == 0 uses division instead of modulo. def is_even(n):
if n % 2:
return True
else:
return False returns True when remainder is non-zero (odd). def is_even(n):
return n % 2 returns remainder directly (not boolean).
Final Answer:
def is_even(n):
if n % 2 == 0:
return True
else:
return False -> Option C