Python Import Pfad zur Laufzeit erweitern

Letztlich habe ich nach einer Möglichkeit gesucht, den Import-Pfad innerhalb eines Python-Skripts zur Laufzeit des Skripts zu erweitern. Da Python ja direkt interpretiert wird und nicht vorher kompiliert werden muss, ist das auch möglich.

Ausgehend vom aktuellen Pfad erweitert folgendes Skript den Import-Pfad auf ein Unterverzeichnis “python”, in dem weitere Skripte liegen. Diese können dann im Anschluss ebenfalls importiert und verwendet werden.

 
# import system packages
import os
import sys
 
# import local path
exec_path=os.getcwd()                                # aktuelles arbeitsverzeichnis
import_local_path=exec_path+'/python/'               # unterverzeichnis, in dem weitere skripte liegen
sys.path.append(import_local_path)                   # erweitere system-variable der import-pfade,
                                                     # nach denen gesucht wird
print 'import local path: '+import_local_path        # 
 
# import script                                      # hier jetzt skripte aus lokalen verzeichnis
                                                     # einbinden (import)

Das Skript importiert also zunächst die beiden Module os und sys, die für die Pfad-Erweiterung benötigt werden. Anschließend wird damit das aktuelle Arbeitsverzeichnis gewonnen. Ausgehend davon wird der neue Pfad festgelegt. Somit sind relativ einfach relative Pfade möglich ohne das aktuelle Arbeitsverzeichnis hardcoden zu müssen. Natürlich wäre letzteres aber auch möglich.
Anschließend wird dann die System-Variable path um den neuen Pfad erweitert. Nun kann man auch alle Module aus diesem Pfad importieren.



Hat dir dieser Artikel gefallen? Abonniere doch unseren RSS-Feed und bleibe über alle weiteren Updates auf dem Laufenden!



Ein Kommentar zu “Python Import Pfad zur Laufzeit erweitern”

  1. harald sagt:

    Das war sehr informativ!! danke für diesen tollen Beitrag

Hinterlasse eine Antwort