Generally speaking, we will store our own Python modules separately from the modules that come with python to facilitate maintenance. So how to add custom modules in Python?
Before answering this question, we must first clarify two points:
1. Strictly distinguish between packages and folders. The definition of a package is the folder containing init.py. If there is no init.py, then it is an ordinary folder.
2. Module import writing method, please note that only the package path is required, not the folder path.
The Python running environment traverses the sys.path list when searching for library files. If we want to register a new class library in the running environment , there are mainly two methods:
1. Add a new path in the sys.path list.
2. Copy the library file to the directory in the sys.path list (such as the site-packages directory).
We can check sys.path by running the code
import sys print sys.path
Running results:
['/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-old', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-dynload', '/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/PyObjC', '/Library/Python/2.7/site-packages']
These two methods The first one is relatively simple and has the least impact on the environment.
Let’s take a look at how to operate the first method:
Create a new pythontab.pth in the site-package folder of the python installation directory. The path of the site-package above is: /Library/Python/2.7/site-packages, and the content of the file is: the folder path where the package that needs to be imported is located.
In this way, when Python sees a .pth file while traversing the known library file directory, it will add the path recorded in the file to the sys.path setting, so that the .pth file says The specified package can be successfully found by the Python running environment, and we can introduce custom modules just like using built-in modules.
If the default sys.path does not contain the path of its own module or package, we can also use the sys.path.apend method to dynamically add the package path.
The above is the detailed content of How to add custom modules in Python. For more information, please follow other related articles on the PHP Chinese website!