Modul aus Unterordner importieren

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Benutzeravatar
nexonic
User
Beiträge: 6
Registriert: Donnerstag 16. Oktober 2008, 22:47
Wohnort: Ja.
Kontaktdaten:

Modul aus Unterordner importieren

Beitragvon nexonic » Donnerstag 16. Oktober 2008, 22:54

Hi,

ich hab mal gelesen, man kann Module aus Unterordner so importieren:

Code: Alles auswählen

import unterordner.modul

Bisher habe ich immer mit "sys.path.append()" die Unterordner in den Namensraum "importiert".

Jetzt wollte ich das aber auch mal mit diesem "import a.b" ausprobieren, funktioniert aber leider nicht:

Code: Alles auswählen

Traceback (most recent call last):
  File "./start.py", line 32, in <module>
    import main.editor
ImportError: No module named main.editor

Das kommt dabei zum Beispiel raus :(

Weiß jemand woran das liegt?

Gruss
N3X0NIC
Benutzeravatar
BlackVivi
User
Beiträge: 762
Registriert: Samstag 9. Dezember 2006, 14:29
Kontaktdaten:

Beitragvon BlackVivi » Donnerstag 16. Oktober 2008, 23:07

Entweder du fügst den Pfad in den sys.path und importierst einfach nur über den Modulnamen oder du erstellst eine __init__.py in deinem Ordner ^_^
Benutzeravatar
nexonic
User
Beiträge: 6
Registriert: Donnerstag 16. Oktober 2008, 22:47
Wohnort: Ja.
Kontaktdaten:

Beitragvon nexonic » Donnerstag 16. Oktober 2008, 23:45

BlackVivi hat geschrieben:oder du erstellst eine __init__.py in deinem Ordner ^_^

Super, danke. Wieder was dazugelernt :)

Gruss
N3X0NIC
Benutzeravatar
str1442
User
Beiträge: 520
Registriert: Samstag 31. Mai 2008, 21:13

Beitragvon str1442 » Freitag 17. Oktober 2008, 00:33

Durch die __init__.py wird der Ordner selbst übringens zum Modul, du kannst dann zb von der __init__.py aus alle anderen Module verwalten.
Benutzeravatar
Leonidas
Administrator
Beiträge: 16023
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Beitragvon Leonidas » Freitag 17. Oktober 2008, 12:58

str1442 hat geschrieben:Durch die __init__.py wird der Ordner selbst übringens zum Modul

Nicht Modul sondern Package.
My god, it's full of CARs! | Leonidasvoice vs Modvoice

Wer ist online?

Mitglieder in diesem Forum: brainstir