Wenn Sie ein Paket erstellen, das aus mehreren Modulen besteht, müssen Sie den Ordnernamen (Paketname), den Dateinamen (Modulname), den zu importierenden Funktions- oder Klassennamen schreiben, und die Importanweisung wird lang. Ich möchte diese verkürzen. Oder ich möchte mit Standardeinstellungen modulübergreifend importieren.
Laut hier
Der Name des importierten Moduls wird in die globale Symboltabelle des importierenden Moduls eingefügt. Die import-Anweisung hat eine Variante, die den Namen in einem Modul direkt in die Symboltabelle des Moduls importiert, das den Import ausführt. (von..import ..)
Wenn Sie also mit "__init __. Py" importieren, können Sie das importierte Symbol in "__init __. Py" verwenden, indem Sie einfach das Paket importieren.
Zum Beispiel
/foo
- __init__.py
- bar.py
Mit der Ordnerstruktur
$ cat bar.py
PIYO=100
$ cat __init__.py
from bar import PIYO
Dann kann foo.PIYO mit import foo
verwendet werden. Es kann verwendet werden, um komplexe Implementierungen innerhalb eines Moduls auszublenden und eine Bibliothek bereitzustellen.
Recommended Posts