Defining Functions in Python
A function is a reusable block of code that performs a specific task. Functions help you:
- Organize code
- Avoid repetition
- Improve readability and maintainability
In Python, you define a function using the def keyword.
Basic Syntax of a Function
function_syntax.py
def function_name():
# block of codeExplanation:
def– keyword used to define a function.function_name– name of your function.- Parentheses
()may include parameters. - The indented block is the function body — it contains the code to execute.
Example 1: Defining and Calling a Function
function_simple.py
def greet():
print("Hello, welcome to Python!")
greet()output.txt
Hello, welcome to Python!Explanation:
- The function
greet()is defined first. - Calling
greet()executes the function.
Example 2: Function With One Parameter
function_parameter.py
def greet(name):
print("Hello,", name)
greet("Alice")output.txt
Hello, AliceExplanation:
- The function accepts a parameter called
name. - When called, the argument
"Alice"is passed in.
Example 3: Function With Multiple Parameters
function_multi_params.py
def add(a, b):
print("Sum is:", a + b)
add(5, 7)output.txt
Sum is: 12Explanation:
- Functions can take multiple parameters.
- You can pass any number of arguments (that match the parameter list).
Example 4: Function With Default Parameter
function_default.py
def greet(name="Guest"):
print("Hello,", name)
greet()
greet("Bob")output.txt
Hello, Guest
Hello, BobExplanation:
- Default parameters provide a default value if no argument is passed.
- Useful for optional arguments.
Example 5: Function Returning a Value
function_return.py
def square(n):
return n * n
result = square(4)
print("Square is:", result)output.txt
Square is: 16Explanation:
- The
returnstatement sends a value back to the caller. - You can assign the returned value to a variable.
Example 6: Function Documentation (Docstring)
function_docstring.py
def greet():
"""This function prints a greeting message."""
print("Hello!")
print(greet.__doc__)
greet()output.txt
This function prints a greeting message.
Hello!Explanation:
- The first string inside a function is a docstring.
- It documents what the function does.
- You can access it with
function_name.__doc__.
Why Use Functions?
| Benefit | Description |
|---|---|
| Code Reuse | Write once, use many times |
| Modularity | Break complex problems into simpler parts |
| Clarity | Improve code readability |
| Maintainability | Easier to update, test, and debug |
| Avoid Repetition | No need to duplicate code |
Summary
- Functions in Python are defined with
def. - Functions may have parameters and may return values.
- They improve code structure and reusability.
- Use docstrings to document what your function does.
Next, we will explore Arguments and Parameters — how to pass data to functions in flexible and powerful ways.