Python3-Submodule-Setup aktualisiert keine Pfade, wenn es mit -m switch @ ausgeführt wi

Ich habe folgende Projektstruktur:

server/
   server.py
   __init__.py

   sockets/
      module.py
      __init__.py

Ich setzePYTHONPATH in ein Verzeichnis über dem Server (zum Beispiel/home/user/server enthält Server,PYTHONPATH ist gesetzt/home/user).

Die Hauptdatei istserver.py; es importiert Module:

import sockets
from sockets.module import Module

Wenn ich rennepython3 $PYTHONPATH/server/server.py direkt klappt es einwandfrei. Wenn ich jedoch @ anrupython3 -m server.server.py es schlägt fehl, obwohl ausdrücklich empfohlen wird, die Hölle des Python-Pfades zu vermeiden, aber es schlägt fehl, das Modul mit einer hässlichen Meldung zu finden:

/usr/bin/python3: Error while finding spec for 'server.server.py' (<class 'ImportError'>: No module named 'sockets')

Warum kann der Modulimport keine Submodule importieren? Wie werden Unterpakete richtig eingerichtet?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage