Learning Sections show
How import works in Python
The import
statement in Python is used to include the definitions (functions, variables, classes) from a module into the current namespace, allowing you to use those definitions in your code.
1. Basic import
The most common way to use import
is:
import module_name
This statement imports the entire module and you can access its definitions using the module_name
prefix.
2. Import specific definitions
You can also import specific definitions from a module:
from module_name import definition1, definition2
This allows you to use definition1
and definition2
directly without the module prefix.
3. Import all definitions
To import all definitions from a module, use:
from module_name import *
This imports all definitions from the module into the current namespace, but it's generally not recommended due to potential name conflicts.
4. Import with alias
Modules can be imported with an alias using the as
keyword:
import module_name as alias
This allows you to use alias
instead of module_name
to access the module's definitions.
5. Importing from a package
If the module is part of a package, you can import it using the dot notation:
import package_name.module_name
Or import specific definitions from a module within a package:
from package_name.module_name import definition
6. Reloading a module
To reload a module that has already been imported, use the reload
function from the importlib
module:
from importlib import reload
reload(module_name)
7. Importing in Python 2 vs Python 3
In Python 2, relative imports are implicit. In Python 3, relative imports must be explicit using a dot (.) notation:
# Python 3 relative import
from .module import definition
8. Importing from a different Python file
To import classes and functions from a different Python file (e.g., from code.py
to main.py
), you can use the following syntax:
from code import ClassName, function_name
This imports the ClassName
class and the function_name
function from the code.py
file. You can then use them in your main.py
file:
# Importing from code.py to main.py
from code import ClassName, function_name
# Creating an instance of the class
instance = ClassName()
# Using the imported function
function_name()