Ich benutze PyCharm, um an einem Projekt zu arbeiten. Das Projekt wird mit einem Interpreter geöffnet und konfiguriert und kann erfolgreich ausgeführt werden. Die Remote-Interpreter-Pfade werden ordnungsgemäß zugeordnet. Dies scheint die richtige Konfiguration zu sein, aber PyCharm hebt meinen gültigen Code mit "ungelösten Referenz" -Fehlern hervor, selbst für integrierte Python-Funktionen. Warum scheinen diese nicht erkannt zu werden, obwohl der Code ausgeführt wird? Gibt es eine Möglichkeit, PyCharm dazu zu bringen, diese korrekt zu erkennen?
Diese spezielle Instanz des Problems tritt bei einem Remote-Interpreter auf, das Problem tritt jedoch auch bei lokalen Interpreten auf.
Antworten:
Datei | Caches ungültig machen ... und ein Neustart von PyCharm hilft.
quelle
Dmitrys Antwort hat bei mir nicht funktioniert.
Ich habe meine Arbeit gemacht, indem ich zu Projektinterpreter gegangen bin, die Registerkarte "Pfade" ausgewählt und auf die Schaltfläche "Aktualisieren" in diesem Untermenü geklickt habe. Es wurde automatisch mit etwas gefüllt, das "Python-Skelette" genannt wird.
Bearbeiten : Screenshot mit PyCharm 3.4.1 (es ist ziemlich gut versteckt)
quelle
Settings > Project Settings > Project Interpreter > Project Interpreters (gear button > more) > --Select the interpreter-- > Interpreter Paths (Directory Tree button on the right) > Reload List of Paths (Blue refresh-like button)
Hierfür gibt es viele Lösungen, von denen einige bequemer sind als andere, und sie funktionieren nicht immer.
Hier ist alles, was Sie versuchen können, von "schnell" zu "nervig":
File
->Invalidate Caches / Restart
und PyCharm neu starten.Run
->Edit Configurations
->Configuration
->Python Interpreter
.File
->Settings
Project: [name]
->Project Interpreter
-> 'Projektinterpreter': Zahnradsymbol ->More...
File
->Settings
Project: [name]
->Project Interpreter
-> 'Projektinterpreter': Zahnradsymbol ->More...
.idea
Ordner Ihres Projekts~/.PyCharm50
auf dem Mac%homepath%/.PyCharm50
unter Windowsquelle
In meinem Fall war es die Verzeichnisstruktur. Mein Projekt sieht so aus:
Klicken Sie also mit der rechten Maustaste auf dir_b> "Verzeichnis als"> "Projektstamm markieren".
quelle
Ich finde mich dabei, den Remote-Interpreter zu entfernen und erneut hinzuzufügen, um dieses Problem zu beheben, wenn das Ungültigmachen von Caches oder das Aktualisieren von Pfaden nicht funktioniert.
Ich verwende vagrant und hin und wieder, wenn ich meinem Multi-VM-Setup eine neue VM hinzufüge, ändert sich der weitergeleitete Port und dies scheint PyCharm zu verwirren, wenn versucht wird, den falschen Port für SSH zu verwenden. Das Ändern des Ports scheint den defekten Referenzen nicht zu helfen.
quelle
Wenn keine der anderen Lösungen für Sie funktioniert, versuchen Sie (Sichern) und löschen Sie Ihren Ordner ~ / .PyCharm40, und öffnen Sie PyCharm erneut. Dies wird auch alle Ihre Vorlieben zerstören.
Auf dem Mac möchten Sie ~ / Library / Caches / Pycharm40 und ~ / Library / Preferences / PyCharm40 löschen.
Und unter Windows: C: \ Users \ $ USER.PyCharm40.
quelle
Getestet mit PyCharm 4.0.6 (OSX 10.10.3) wie folgt:
Problem gelöst!
quelle
sehr leicht
Sie müssen nur Ihr Stammverzeichnis wie folgt markieren: SOURCE ROOT (rot) und Ihre Anwendungen: EXCLUDED ROOT (blau),
dann verschwindet die ungelöste Referenz.
quelle
Es tut mir leid, diese Frage zu beantworten, ich muss jedoch ein wichtiges Update vornehmen.
Möglicherweise möchten Sie Ihren Projektinterpreter auch auf Python 2.7.6 zurücksetzen, wenn Sie eine andere Version als diese verwenden. Dies funktionierte bei meiner Ubuntu-Installation von PyCharm 4.04 professional für mich, nachdem keine der anderen Empfehlungen mein Problem gelöst hatte.
quelle
Settings -> "Project Interpreters"
, schaltete den Gang ein und dann"More..."
. Wählen Sie den Standard-Python-Interpreter (/usr/bin/python2.7
in meinem Fall), drücken Sie"Ok"
und"Apply"
. Dann ging ich wieder hinein und wählte die tatsächliche virtuelle Umgebung, die ich verwenden wollte."Ok"
und"Apply"
wieder, und es ist behoben.FileNotFoundError
ist es nur mit Python-3. Nachdem ich den richtigen Interpreter sowohl in File-Settings-Project-Interpreter als auch in Run-Edit-Configurations eingestellt hatte, ließ einer von diesen den Fehler verschwinden.Sie können versuchen, Pycharm zu schließen, den
.idea
Ordner aus Ihrem Projekt zu löschen , Pycharm erneut zu starten und das Projekt neu zu erstellen. Dies funktionierte für mich, während das Ungültigmachen des Caches dies nicht tat.quelle
Ich habe es endlich geschafft, nachdem keine der vorgeschlagenen Lösungen für mich funktioniert hat. Ich spielte mit einem Django Rest Framework-Projekt und verwendete eine virtuelle Umgebung, die ich damit eingerichtet hatte. Ich konnte Pycharm reparieren, indem ich den Stammordner als Quellstamm markierte, aber dann löste der Server von django Auflösungsausnahmen aus. Also würde einer arbeiten, wenn der andere nicht würde und umgekehrt.
Letztendlich musste ich nur den Unterordner als Quellwurzel in pycharm markieren. Meine Struktur war also so
Dieser zweite Spielplatzordner war derjenige, den ich als Quellstamm markieren musste, damit alles wie erwartet funktioniert. Das war für mein Szenario kein Problem, daher war es eine praktikable Lösung.
Ich dachte nur, ich würde teilen, falls jemand anderes es benutzen kann.
quelle
Es könnte auch ein Problem mit der Python-Version sein. Ich musste das richtige auswählen, damit es funktioniert.
quelle
Wenn Sie nur einige "ungelöste Referenz" -Fehler ignorieren möchten, können Sie PyCharm auch explizit mitteilen, indem Sie dies vor Ihre Klasse / Methode / Funktion stellen:
quelle
Ich habe alle anderen Projekte geschlossen und mein erforderliches Projekt isoliert in Pycharm ausgeführt. Ich habe eine separate virtuelle Umgebung von pycharm erstellt und alle erforderlichen Module mithilfe von pip hinzugefügt. Ich habe diese virtuelle Umgebung im Interpreter des Projekts hinzugefügt. Dies löste mein Problem.
quelle
Geeze, was für ein Albtraum, meine Zusammenführung verschiedener StackOVerflow-Antworten:
quelle
Keine der oben genannten Lösungen hat bei mir funktioniert!
Wenn Sie für Ihr Projekt eine virtuelle Umgebung verwenden, stellen Sie sicher, dass Sie die
python.exe
Datei in Ihrem Verzeichnis für die virtuelle Umgebung als Interpreter für das Projekt anwenden.(Alt + Ctrl + Shift + S)
Dadurch wurde das Problem für mich behoben.quelle
In meinem Fall wird der Inspektionsfehler aufgrund eines ganz bestimmten Falles von Python-Code angezeigt. Eine Min-Funktion, die zwei Numpy-Funktionen und zwei Listenzugriffe enthält, führt dazu, dass meine Codeüberprüfung diese Art von Fehlern verursacht.
Das Entfernen der Zeile 'd = 0' im folgenden Beispiel führt erwartungsgemäß zu einem ungelösten Referenzfehler, aber beim Lesen wird der Fehler für den Codeinspektor nicht behoben. Ich kann den Code danach immer noch ohne Probleme ausführen.
Das Löschen von Caches und das erneute Laden der Pfadliste funktioniert nicht. Nur das Ändern des Codes mit einem der folgenden Beispiel-Patches funktioniert:
quelle
Keine der Antworten löste mein Problem.
Was es für mich getan hat, war, die Umgebung zu wechseln und zur gleichen Umgebung zurückzukehren.
File->Settings->Project interpreter
Ich benutze Conda-Umgebungen.
quelle
Arbeitete für mich mit viel einfacherer Aktion :
Profit - Pycharm aktualisiert Skelette und alles ist in Ordnung.
quelle
Wenn Sie
vagrant
den Fehler verwenden, kann dies durch einen falschen Python-Interpreter verursacht werden. In unserem verwendenvagrant
wirpyenv
also musste ich denPython Interpreter path
Weg von/usr/bin/python
nach ändern/home/vagrant/.pyenv/versions/vagrant/bin/python
quelle
Ich habe ein Projekt, bei dem eine Datei eine
src/
andere Datei in dasselbe Verzeichnis importiert. Um PyCharm zu erkennen, musste ich zu Datei> Einstellungen> Projekt> Projektstruktur>src
Ordner auswählen und auf "Markieren als: Quellen" klicken.Von https://www.jetbrains.com/help/pycharm/configuring-folders-within-a-content-root.html
quelle
Mein Problem ist, dass Flask-WTF von PyCharm nicht gelöst wird . Ich habe versucht, den Cache neu zu installieren und dann zu installieren oder ungültig zu machen und PyCharm neu zu starten, aber es funktioniert immer noch nicht.
Dann habe ich mir diese Lösung ausgedacht und sie funktioniert perfekt für mich.
Jetzt sehen Sie, dass Ihre Bibliothek aufgelöst wurde.
quelle
Verwenden Sie virtualenv?
In diesem Fall müssen Sie PyCharm über jede Änderung des Speicherorts der gewünschten python.exe informieren (lediglich ./activate reicht für PyCharm nicht aus.)
Stellen Sie sicher, dass Pycharm auf den richtigen Interpetor und die richtigen Pakete zeigt: Datei -> Einstellungen -> Projekt -> Projektinterpreter. Klicken Sie auf das Zahnrad und wählen Sie python.exe im Skriptordner von virtualenv
quelle