Heim >Backend-Entwicklung >Python-Tutorial >Wie kann ich alle Module effizient aus einem Verzeichnis in Python importieren?
Alle Module in einen Ordner laden
Das Importieren eines Modulverzeichnisses kann eine bequeme Möglichkeit sein, eine große Anzahl verwandter Module zu verwalten. Die Verwendung der standardmäßigen from-Anweisung kann jedoch zu unerwartetem Verhalten führen, wie im folgenden Beispiel zu sehen ist:
/Foo bar.py spam.py eggs.py
Das Hinzufügen einer __init__.py-Datei und die Verwendung von from Foo import * führen möglicherweise nicht zum gewünschten Ergebnis.
Lösung: alle Variable generieren
Um alle richtig zu laden Module in einem Ordner können Sie die folgende Methode verwenden:
Hier ist der Python-Code für diese Lösung:
from os.path import dirname, basename, isfile, join import glob modules = glob.glob(join(dirname(__file__), "*.py")) __all__ = [ basename(f)[:-3] for f in modules if isfile(f) and not f.endswith('__init__.py')]
Diese Lösung erstellt dynamisch eine Liste von Modulnamen und weist sie allen zu in __init__.py. Dadurch können Sie alle Module im Ordner importieren, indem Sie einfach from Foo import *.
verwendenDas obige ist der detaillierte Inhalt vonWie kann ich alle Module effizient aus einem Verzeichnis in Python importieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!