Functions and Modules: Building Blocks of Python
What is a Function?
A function is a reusable block of code that performs a specific task. It takes input, processes it, and returns an output. Functions help in organizing code, making it more readable, and promoting code reusability.
Syntax:
Python
def function_name(parameters):
"""Docstring: Explains what the function does"""
# Function body
return value # Optional
def
keyword defines a function.function_name
is the name given to the function.parameters
are optional inputs to the function.docstring
(triple quotes) describes the function’s purpose.return
statement specifies the output of the function.
Example:
Python
def greet(name):
"""Greets a person by name."""
print("Hello,", name, "!")
greet("Alice") # Output: Hello, Alice !
Key Points:
- Functions improve code readability and maintainability.
- Functions can be called multiple times with different arguments.
- Functions can return values, which can be used in other parts of the program.
- Functions can be nested within other functions.
- Functions can have default parameter values.
- Functions can use variable-length arguments (*args and **kwargs).
Modules
What is a Module?
A module is a Python file containing definitions and statements. It can define functions, classes, and variables. Modules help in organizing code into logical units and promoting code reusability across different scripts.
Creating a Module:
Create a Python file (e.g., my_module.py
) with the following content:
Python
def add(x, y):
return x + y
def subtract(x, y):
return x - y
Importing a Module:
Python
import my_module
result1 = my_module.add(3, 2)
result2 = my_module.subtract(5, 1)
print(result1, result2) # Output: 5 4
Key Points:
- Modules can be imported using the
import
statement. - Modules can be organized into packages for larger projects.
- The
__name__
attribute of a module is equal to'__main__'
if the module is run directly. - Modules provide a way to share code among different scripts.
Relationship Between Functions and Modules
- Functions are building blocks within modules.
- Modules are containers for related functions and variables.
- Modules promote code reusability at a larger scale.
In Summary:
Functions and modules are essential for writing well-structured and efficient Python code. By understanding these concepts, you can create modular, reusable, and maintainable programs.
What is a function in Python?
A function is a block of code that performs a specific task. It can take inputs, process them, and return an output. Functions are reusable, which means you can define them once and use them multiple times in your code.
What is a module in Python?
A module is a file that contains Python code. It can define functions, classes, and variables. Modules are used to organize your code and make it more reusable.
How do you define a function in Python?
To define a function in Python, you use the def
keyword followed by the function name, parentheses, and a colon. The function body is indented below the colon.
Here is an example:
Pythondef greet(name): print("Hello,", name, "!")
How do you call a function in Python?
To call a function in Python, you use the function name followed by parentheses. If the function takes any arguments, you pass them inside the parentheses.
Here is an example:
Pythongreet("Alice")
What is the difference between a function and a module?
A function is a block of code that performs a specific task. A module is a file that contains Python code. Modules can contain functions, classes, and variables.
How do you import a module in Python?
To import a module in Python, you use the import
keyword followed by the module name.
Here is an example:
Pythonimport math
How do you create a module in Python?
To create a module in Python, you create a new file with a .py
extension. The file name will be the module name.