[Python-de] Import problem im Eigendem Module Paket

Manfred Gil manfred-gil at t-online.de
So Okt 7 05:20:24 EDT 2018


Hallo,

Am Sun, 07 Oct 2018 10:52:13 +0200 schrieb Hartmut Goebel:

> Hallo,
> 
> Am 05.10.2018 um 19:04 schrieb Manfred Gil:
>> Mein Problem ist das ich kein Module aus einem Übergeordnetem 
>> Ordner importieren kann.
>>
>> Ich bekomme stets die Fehlermeldung:
>>
>> File "import_test.py", line 4, in <module>
>>     from ..config import daten as da
>> SystemError: Parent module '' not loaded, cannot perform relative import
> 
> Um das bisher geschriebene noch zu ergänzen, bzw. deutlich zu machen:
> 
> Das "import" Statement bezieht sich immer auf Module, *nie* auf
> Verzeichnisse. Der relative Import bezieht sich also auf übergeordnete
> Module. Auch wenn Module in Verzeichnissen zu Paketen gesammelt werden,
> geht es nicht um Verzeichnisse.
> 
> Wie Peter schon geschrieben hat
> 
> Wenn Du die Datei my_paket/daten/import_test.py so aufrufst "python
> my_paket/daten/import_test.py", dann ist es ein Skript und eben nicht
> Teil einen Pakets. Und damit funktionieren relative Imports nicht, denn
> die sind nur in Paketen zulässig.
> 
> Verwendest Du jedoch "python -m my_paket.daten.import_test", dann führst
> Du das Module mit diesem Namen aus. Das Module "kennt" das Paket, zu dem
> es gehört und damit funktionieren relative Imports.

Danke nochmals, auch dir Peter, für die erläuterungen.

Ich hab nun den Denkfehler erkannt und im Nachhinein ist mir auch klar warum
das ganze nicht Funktionieren konnte.

Der Interpreter kannte halt die Ordnerstrucktur ( Modul strucktur ) beim
aufruf halt nicht.

Gruß
Man<und wieder was da zu gelernt>fred


Mehr Informationen über die Mailingliste python-de