Wann immer ich das tue, habe from 'x' import 'y'
ich mich gefragt, welches das "Modul" und welches das "Paket" ist und warum es nicht umgekehrt ist?
Wann immer ich das tue, habe from 'x' import 'y'
ich mich gefragt, welches das "Modul" und welches das "Paket" ist und warum es nicht umgekehrt ist?
Antworten:
Ein Python-Modul ist einfach eine Python-Quelldatei, mit der Klassen, Funktionen und globale Variablen verfügbar gemacht werden können.
Beim Importieren aus einer anderen Python-Quelldatei wird der Dateiname als Namespace behandelt.
Ein Python-Paket ist einfach ein Verzeichnis von Python-Modulen.
Stellen Sie sich zum Beispiel den folgenden Verzeichnisbaum in vor /usr/lib/python/site-packages
:
mypackage/__init__.py <-- this is what tells Python to treat this directory as a package
mypackage/mymodule.py
Dann würden Sie tun:
import mypackage.mymodule
oder
from mypackage.mymodule import myclass