1 - What is a Python module ?
A module in Python is simply a file made up of Python code that you can call and use its code without having to copy it. A module can contain functions, classes, variables ... A module allows you to logically organize your Python code. The grouping of associated code in a module makes the code easier to understand and use.
2 - Creating and importing a module
We will try to create our own Python module named myModule:
1. We create a file named myModule.py
2. We introduce a code of some simple functions on the myModule.py file for example:
def sum(x , y):
return x + y
def division(x , y):
return x/y
3. We then create a python file to test the module for example testModule.py in the same directory as the file myModule.py (the two files myModule.py and testModule.py can be placed on different directories provided you specify the path of the myModule.py files when it is imported) 4. On the testModule.py file, type the code:
# We import the entire module
from myModule import *
# We can now use the module functions:
print ("the sum of 7 and 8 is:", sum (7 , 8))
print ("the division of 12 by 3 is:", division (12 , 3))
3 - Partial import of the module
To use the existing functions in a module, it is not necessary to import the entire module, but just import the functions you need. For example if we need to use only the sum() function, we just import this function:
# We import the sum () function of the module
from myModule import sum
# We can now use the sum functions:
print ("the sum of 7 and 8 is:", sum (7 , 8))
4 - Import of an external module
So far, we've only seen modules that are in the same directory in the Python file that calls the module, but in general, python modules are stored in other directories and accessible via specific paths. We will deal with a simple example to understand: It is assumed that the file myModule.py is located in a library directory and will therefore be accessible via the path: "/library/myModule.py":
In this case we must specify the path in the import instruction:
# we specify the module path
from library.myModule import *
# We can now use the module functions:
print ("the sum of 7 and 8 is:", sum (7 , 8))
print ("the division of 12 by 3 is:", division (12 , 3))
my-courses.net