Guten Tag,
ich möchte meinem Projekt einen modularen Aufbau verpassen. Das heißt: Der User soll während der Laufzeit (selbstprogrammierte) Module laden / aktualisieren / entladen können. Dass ich dies mit OOP am besten löse, ist mir bewusst. Die Frage ist nur wie. Ich dachte da an einen Ordner "modules", in dem .py-Dateien mit einer bestimmten Klasse gelagert sind.
Ich bin am verzweifeln und bräuchte einen Denkanstoß. Kann mir jemand helfen?
Grüße,
Vortec
Modularer Aufbau
Hallo!
Jan
Laden und Aktualisieren müsste doch eigentlich mit import/reload gehen. Entladen? Weiß nicht.Vortec hat geschrieben: Ich bin am verzweifeln und bräuchte einen Denkanstoß. Kann mir jemand helfen?
Jan
Hallo nochmal,
zwei Fragen zu dem Modul "imp".
Frage 1:
Gibt mir:
NameError: name 'x' is not defined
Wieso? xtemplate.xtemplate() funktioniert auch nicht.
Frage 2:
Wie oben erläutert möchte ich eine Datei aus dem Ordner "modules" importieren.
Gibt mir:
ImportError: No frozen submodule named modules.testx
zwei Fragen zu dem Modul "imp".
Frage 1:
Code: Alles auswählen
fp, pathname, description = imp.find_module("xtemplate")
imp.load_module("x", fp, pathname, description)
fp.close()
[b]bla = x.xtemplate()[/b]
NameError: name 'x' is not defined
Wieso? xtemplate.xtemplate() funktioniert auch nicht.
Frage 2:
Wie oben erläutert möchte ich eine Datei aus dem Ordner "modules" importieren.
Code: Alles auswählen
[b]fp, pathname, description = imp.find_module("testx", "modules")[/b]
imp.load_module("x", fp, pathname, description)
fp.close()
ImportError: No frozen submodule named modules.testx
-
- Python-Forum Veteran
- Beiträge: 2010
- Registriert: Freitag 11. Oktober 2002, 18:00
- Wohnort: Salzburg
- Kontaktdaten:
der 2. Parameter von findmodule ist eine Liste von Pfaden.
Funktioniert bei mir.
Gruß
Dookie
Code: Alles auswählen
fp, pathname, description = imp.find_module("testx", ["modules"])
Gruß
Dookie