Seite 1 von 1

Modul von unterverzeichnis importieren

Verfasst: Sonntag 5. August 2018, 12:33
von Felix Eckert
Hallo,
ich habe neuerdings ein problem vom importieren von modulen in einen Unterverzeichnis. Ich weiß wie ich dies mache, allerdings hab ich das problem wenn ich ein von Einem Modul das in einen Unterverzeichnis liegt ein Modul das in einen weiteren Unter verzeichnis liegt zu importieren.
Hier ist die struktur:

Code: Alles auswählen

.
|- main.py 
 |_Modul
      |- __init__.py
      |_ CMD (Das andere modul)
             |- __init__.py
             |- cmd_foo.py
Ich habe so ein Problem schonmal gehabt, hatte dort aber nur das __init__.py im Unterverzeichnis und konnte deswegen einfach

Code: Alles auswählen

from . import CMD
machen. Aber nun habe ich dort mehrere Dateien und kann nur das __init__.py importieren. Das heist ich kann weder mit

Code: Alles auswählen

from . import CMD.cmd_foo
noch mit

Code: Alles auswählen

 from . import CMD
 CMD.cmd_foo
darauf zugreifen.

Schonmal Danke im Voraus

Re: Modul von unterverzeichnis importieren

Verfasst: Sonntag 5. August 2018, 13:10
von __deets__
Auf der rechten Seite dürfen auch nur Namen stehen. Keine Module oder Pakete. Es muss also

from CMD.cmd_foo import etwas

heißen.

Alternativ kannst du

import .CMD.cmd_foo as foobar

machen. Statt foobar besser cmd_foo, aber es ist wichtig zu verstehen, dass das ein beliebiger alias ist.

Re: Modul von unterverzeichnis importieren

Verfasst: Sonntag 5. August 2018, 17:36
von Sirius3
Es muß

Code: Alles auswählen

from .CMD import cmd_foo
heißen.

Re: Modul von unterverzeichnis importieren

Verfasst: Sonntag 5. August 2018, 20:16
von __deets__
Ich sollte sowas nicht aus dem Gedächtnis erzählen.....

Re: Modul von unterverzeichnis importieren

Verfasst: Montag 6. August 2018, 17:55
von Felix Eckert
Dankesehr , funktioniert alles! :)