Seite 1 von 1
import aus unterordner welcher mit "." startet
Verfasst: Freitag 5. Juli 2013, 14:11
von rkager
Hallo Board ich möchte alles aus einem Skript importieren welches in einem Unterordner liegt welcher mit einem Punkt beginnt.
RootFolder
->start.py
-> .FooBarFolder
--->child.py
--->__init__.py #leere init Datei
wie muss mein Statement aussehen, damit ich die ChildElemente in start.py verfügbar habe?
Danke
Re: import aus unterordner welcher mit "." startet
Verfasst: Freitag 5. Juli 2013, 15:07
von /me
rkager hat geschrieben:Hallo Board ich möchte alles aus einem Skript importieren welches in einem Unterordner liegt welcher mit einem Punkt beginnt.
Ich könnte mir so etwas vorstellen:
Code: Alles auswählen
import imp
open_file, file_name, description = imp.find_module('.FooBarFolder')
imp.load_module('foobar', open_file, file_name, description)
# alternativ müsste als Einzeiler auch Folgendes gehen
imp.load_module('foobar', *imp.find_module('.FooBarFolder'))
import foobar.child
Warum muss der Ordner denn unbedingt nicht der Python-Nomenklatur gehorchen?
Re: import aus unterordner welcher mit "." startet
Verfasst: Freitag 5. Juli 2013, 22:20
von daemonTutorials
Möglicherweise soll dieser Ordner unter Linux versteckt sein. Das macht normalerweise der "." davor.
Re: import aus unterordner welcher mit "." startet
Verfasst: Freitag 5. Juli 2013, 22:26
von BlackJack
@daemonTutorials: Das beantwortet die Frage nach dem warum aber nicht wirklich, denn warum sollte man an der Stelle einen ”versteckten” Ordner haben wollen.
Re: import aus unterordner welcher mit "." startet
Verfasst: Sonntag 7. Juli 2013, 11:38
von daemonTutorials
Stimmt. Wenn man paranoid wird, könnte man auch einfach vorkompilierte Scripts an den Endnutzer ausliefern anstatt den Ordner zu verstecken.