553 Stimmen

Unresolved Referenzproblem in PyCharm

Ich habe eine Verzeichnisstruktur

 simulate.py
 src
    networkAlgorithm.py
    ...

Und ich kann auf das Netzwerkmodul mit sys.path.insert() zugreifen.

import sys
import os.path
sys.path.insert(0, "./src")
from networkAlgorithm import *

Allerdings beschwert sich PyCharm, dass es nicht auf das Modul zugreifen kann. Wie kann ich PyCharm beibringen, die Referenz aufzulösen?

Bildbeschreibung eingeben

1141voto

Games Brainiac Punkte 75966

Das manuelle Hinzufügen, wie Sie es getan haben, ist in der Tat eine Möglichkeit, dies zu tun, aber es gibt eine einfachere Methode. Sie können PyCharm einfach mitteilen, dass Sie den src-Ordner als Quellverzeichnis hinzufügen möchten, und dann das Quellenverzeichnis Ihrem Python-Pfad hinzufügen.

Auf diese Weise müssen Sie keine fest codierten Dinge in die Einstellungen Ihres Interpreters einfügen:

  • Fügen Sie src als Quellinhaltswurzel hinzu:

                            Bildbeschreibung hier eingeben

  • Stellen Sie dann sicher, dass Sie Quellen zum PYTHONPATH hinzufügen unter:

    Einstellungen ~ Build, Ausführung, Bereitstellung ~ Konsole ~ Python-Konsole

Bildbeschreibung hier eingeben

  • Jetzt werden die Imports aufgelöst:

                      Bildbeschreibung hier eingeben

Auf diese Weise können Sie beliebige Objekte als Quellverzeichnis hinzufügen, und die Dinge werden einfach funktionieren. Wenn Sie es jedoch als Quellverzeichnis abwählen, erhalten Sie einen Fehler:

                                  Bildbeschreibung hier eingeben

Vergessen Sie nach all dem nicht, neu zu starten. Wählen Sie im PyCharm-Menü: Datei --> Caches ungültig machen / Neu starten

73voto

Ukr Punkte 1859
  1. Überprüfen Sie die Datei __init__.py im src Ordner
  2. Fügen Sie den src Ordner als Quellverzeichnis hinzu
  3. Vergewissern Sie sich dann, dass Sie die Quellen zu Ihrem PYTHONPATH hinzufügen (siehe oben)
  4. im PyCharm Menü wählen Sie: Datei --> Zwischenspeicher ungültig machen --> Neustart

34voto

AeroHil Punkte 687

Wenn jemand immer noch darauf schaut, funktioniert die akzeptierte Antwort immer noch für PyCharm 2016.3, als ich es versucht habe. Die Benutzeroberfläche hat sich vielleicht geändert, aber die Optionen sind immer noch die gleichen.

d.h. Klicken Sie mit der rechten Maustaste auf Ihren Stammordner --> "Verzeichnis als" markieren --> Quellverzeichnis

21voto

mehdi Punkte 227

Nachdem Sie alle Workarounds getestet haben, schlage ich vor, dass Sie einen Blick auf Einstellungen -> Projekt -> Projektabhängigkeiten werfen und diese neu anordnen.

PyCharm Einstellung

15voto

prosseek Punkte 167667

Normalerweise wird $PYTHONPATH verwendet, um dem Python-Interpreter beizubringen, die erforderlichen Module zu finden. PyCharm muss den Pfad in den Einstellungen hinzufügen.

Bildbeschreibung hier eingeben

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X