In Python, a module is a file containing Python definitions, functions, and statements. Modules allow you to logically organize your Python code, making it reusable and easier to manage. A module can define functions, classes, and variables, and it can also include runnable code.
1. Importing Modules
You can import a module using the import
statement. Once a module is imported, you can use its functions and variables.
import math
result = math.sqrt(16)
print(result)
2. Importing Specific Functions or Variables
You can import specific functions or variables from a module using the from ... import
statement.
from math import pi, sqrt
print(pi)
print(sqrt(16))
3. Renaming a Module
You can rename a module while importing it using the as
keyword.
import math as m
print(m.sqrt(16))
4. Creating Your Own Module
You can create your own module by saving Python code in a file with a .py
extension. The filename becomes the module name.
# mymodule.py
def greet(name):
return f"Hello, {name}!"
# In another Python file or interpreter
import mymodule
print(mymodule.greet("Alice"))
5. Built-in Python Modules
Python comes with a standard library of built-in modules that provide many useful functions and classes.
math
: Provides mathematical functions.os
: Provides a way of using operating system-dependent functionality.sys
: Provides access to some variables used or maintained by the Python interpreter.datetime
: Supplies classes for manipulating dates and times.random
: Implements pseudo-random number generators for various distributions.
import datetime
current_time = datetime.datetime.now()
print(current_time)
6. Exploring Module Contents
You can use the dir()
function to list all the functions, classes, and variables in a module.
import math
print(dir(math))
7. The __name__
Variable
Every Python module has a special attribute called __name__
. When a module is run as the main program, the __name__
variable is set to "__main__"
. If the module is being imported into another module, __name__
is set to the module’s name.
# mymodule.py
if __name__ == "__main__":
print("This is the main program.")
else:
print("This module has been imported.")
8. Installing External Modules
You can install external Python modules using pip
, the Python package manager.
pip install requests
import requests
response = requests.get('https://api.github.com')
print(response.status_code)
9. Python Package
A package is a collection of Python modules organized in directories. Each package in Python is a directory that must contain a special file called __init__.py
. This file can be empty but indicates that the directory is a package.
# Directory structure
my_package/
__init__.py
module1.py
module2.py
# Importing a module from a package
from my_package import module1
10. Commonly Used Python Modules
os
: Provides a way of using operating system-dependent functionality like reading or writing to the file system.sys
: Provides access to some variables used or maintained by the Python interpreter.re
: Provides regular expression matching operations.json
: Provides functions for working with JSON data.datetime
: Provides classes for manipulating dates and times.subprocess
: Allows you to spawn new processes, connect to their input/output/error pipes, and obtain their return codes.random
: Implements pseudo-random number generators for various distributions.
Modules are a crucial part of Python programming, enabling code reusability, organization, and modular design. By dividing your code into modules, you can make your programs more manageable and maintainable.