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

3voto

Benjamin Punkte 337

Nachdem ich die akzeptierte Antwort befolgt hatte, hat das folgende für mich das Problem gelöst:

Datei Einstellungen Projekt Projektabhängigkeiten

Wählen Sie das Verzeichnis/das Projekt aus, in dem sich Ihre Datei mit nicht aufgelösten Imports befindet, und aktivieren Sie das Kontrollkästchen, um PyCharm mitzuteilen, dass dieses Projekt von Ihrem anderen Projekt abhängt.

Meine Ordnerstruktur ist etwas anders als die in der Frage. Meine sieht so aus:

 MeinVerzeichnis  
      simulate.py  
 src  
      networkAlgorithm.py  
      ...

Die Angabe, dass src von MeinVerzeichnis abhängt, hat das Problem für mich gelöst!

2voto

Ranjeet Punkte 393

Viele Male passiert es, dass das Plugin nicht installiert ist. z.B.

Wenn Sie ein Django-Projekt entwickeln und das Django-Plugin nicht in PyCharm installiert haben, wird ein Fehler "unresolved reference" angezeigt. Siehe: https://www.jetbrains.com/pycharm/help/resolving-references.html

2voto

Gershon Herczeg Punkte 3023

Dies hat für mich funktioniert: Top-Menü -> Datei -> Caches zurücksetzen/Neustart

2voto

Tabs Punkte 21

Ich habe auch eine virtuelle Umgebung wie Dan oben benutzt, aber ich konnte einen Interpreter in der vorhandenen Umgebung hinzufügen, und brauchte daher nicht auf globale Site-Pakete zu verweisen und somit rückgängig zu machen, was eine virtuelle Umgebung erreichen möchte.

2voto

  1. --> Klicken Sie mit der rechten Maustaste auf das Verzeichnis, in dem sich Ihre Dateien in PyCharm befinden
  2. Gehen Sie zu --> Verzeichnis als markieren
  3. Wählen Sie den --> Quellordner aus

Ihr Problem wird gelöst sein

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