Add custom modules in Python
Generally speaking, we will store the Python modules we write ourselves 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 looking for library files. If we want to register a new class library in the running environment, there are two main methods:
1. In sys.path Add new paths to the 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
Run result:
['/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']
The first of these two methods is simpler and has less impact on the environment Minimum.
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, 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 package specified in the .pth file will also It 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.

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics



Solution to permission issues when viewing Python version in Linux terminal When you try to view Python version in Linux terminal, enter python...

When using Python's pandas library, how to copy whole columns between two DataFrames with different structures is a common problem. Suppose we have two Dats...

How to teach computer novice programming basics within 10 hours? If you only have 10 hours to teach computer novice some programming knowledge, what would you choose to teach...

How to avoid being detected when using FiddlerEverywhere for man-in-the-middle readings When you use FiddlerEverywhere...

How does Uvicorn continuously listen for HTTP requests? Uvicorn is a lightweight web server based on ASGI. One of its core functions is to listen for HTTP requests and proceed...

The article discusses popular Python libraries like NumPy, Pandas, Matplotlib, Scikit-learn, TensorFlow, Django, Flask, and Requests, detailing their uses in scientific computing, data analysis, visualization, machine learning, web development, and H

In Python, how to dynamically create an object through a string and call its methods? This is a common programming requirement, especially if it needs to be configured or run...

Using python in Linux terminal...
