Heim  >  Artikel  >  Backend-Entwicklung  >  So ändern Sie den Suchpfad beim Importieren eines Pakets in Python

So ändern Sie den Suchpfad beim Importieren eines Pakets in Python

WBOY
WBOYnach vorne
2023-05-29 09:46:051182Durchsuche

    Pfadsuchmechanismus beim Modulimport

    1.1 Paketimport-Suchmechanismus

    Python-Import Der Vorgang ähnelt im Wesentlichen unserer täglichen Suche nach einer Datei mit einem bestimmten Dateinamen auf dem Computer. Allerdings durchsucht Python im Allgemeinen nicht die gesamte lokale Festplatte, sondern verfügt über einen eigenen Kontrollmechanismus, der den Umfang steuern kann Die Suche und Reihenfolge, die Effizienz gewährleisten und ein gewisses Maß an Isolation erreichen können, basieren auf diesem Prinzip Separat isolierte Tools zur Wartung und Erstellung virtueller Umgebungen erreichen ihre Ziele auch durch Ändern des Standardinstallationspfads, der Version, des Paketsuchpfads und anderer Informationen.

    Im Allgemeinen sind beim Importieren die Reihenfolge und der Umfang der Paketsuche wie folgt:

    1. Suchen Sie zuerst den aktuellen Ordner des ausgeführten Befehls oder die aktuelle Arbeit des Systemordners (cwd kann per Befehl geändert werden)

    2. Suchen Sie dann nach dem Dateipfad in der Umgebungsvariablen PYTHONPATH

    3. Suchen Sie abschließend im Python-Installationspfad nach dem Ordner „sitepackages“ (im Allgemeinen werden über pip installierte Pakete standardmäßig in diesem Ordner abgelegt. Natürlich können Sie auch einfach Ihre eigenen Pakete in diesen Ordner legen , daher ist es nicht erforderlich, den Suchpfad zu ändern ​​der drei in 1.1 genannten Suchknoten ändern den Suchbereich beim Importieren des Pakets

    4. 1.2.1 Durch Ändern der Variablen sys.path

    sys.path-Variable Alle Ordnerpfade innerhalb des Python-Paketsuchpfads werden verwaltet (d. h. der aktuelle Ordner, der Pfad in der Umgebungsvariablen PYTHONPATH und der Standardinstallationspfad von Python). Sie können den Pfad hinzufügen, nach dem gesucht werden soll beim Importieren in die Liste über Methoden wie sys.path.append oder sys.path.insert Nur innerhalb der Listenvariablen.

    Diese Methode wird jedoch nur wirksam, wenn sie ausgeführt wird, und wird ungültig, sobald Sie sie beenden.

    1.2.2 Durch Ändern der Umgebungsvariablen PYTHONPATH

    Die Umgebungsvariable PYTHONPATH ist eine Variable, die den Suchpfad beim Importieren von Python-Paketen verwaltet, sodass Sie den Pfad zur Umgebung hinzufügen können Variable, um den Suchpfad zu ändern. Da diese Methode die Umgebungsvariable ändert, ist sie auch dauerhaft und die Auswirkung ist global.

    Für Mac-Computer lautet die Methode zum Ändern dieser Umgebungsvariablen wie folgt:

    Öffnen Sie die Datei ~/.bashrc, falls nicht, Verwenden Sie den Touch-Befehl Create

      und schreiben Sie export PYTHONPATH=your own dir:$PYTHONPATH in die Datei, wenn Sie beispielsweise den Pfad ~/test hinzufügen möchten die Umgebungsvariable, dann exportieren Sie PYTHONPATH =~/test:$PYTHONPATH
    1. Führen Sie source ~/.bashrc auf der Befehlszeile aus (hauptsächlich, um das System neu laden und ausführen zu lassen Datei, damit diese Änderung wirksam wird)
    2. 1.2.3 Durch Hinzufügen der **.pth-Datei
    3. Die beiden oben genannten Methoden sind entweder vorübergehende Änderungen , oder globale Änderungen am Aufprallbereich Zu groß, man kann sagen, dass die dritte Methode die Eigenschaften der ersten beiden Methoden aufweist.

    4. Sie können eine **.pth-Datei im Site-Packages-Verzeichnisordner unter dem angegebenen Python-Installationsverzeichnis hinzufügen und den Pfad, nach dem gesucht werden soll, Zeile für Zeile in der Datei hinzufügen.
    Anhang: So fügen Sie vorübergehend den Python-Suchpaketpfad hinzu

    Methode 1: (Geben Sie zuerst Python ein)

    import sys
    sys.path.append(‘路径')

    (Diese Methode ist nur für die aktuelle Python ist gültig)

    Methode 2:

    export PYTHONPATH=路径

    (Diese Methode ist für alle Python gültig)

    Das obige ist der detaillierte Inhalt vonSo ändern Sie den Suchpfad beim Importieren eines Pakets in Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

    Stellungnahme:
    Dieser Artikel ist reproduziert unter:yisu.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen