J'ai une structure de répertoire
├── simulate.py
├── src
│ ├── networkAlgorithm.py
│ ├── ...
Et je peux accéder au module réseau avec sys.path.insert()
.
import sys
import os.path
sys.path.insert(0, "./src")
from networkAlgorithm import *
Cependant, pycharm se plaint de ne pas pouvoir accéder au module. Comment puis-je apprendre à pycham à résoudre la référence?
__init__.py
fichier?Réponses:
L'ajouter manuellement comme vous l'avez fait est en effet une façon de le faire, mais il existe une méthode plus simple, qui consiste simplement à dire à pycharm que vous souhaitez ajouter le
src
dossier en tant que racine source, puis en ajoutant la racine des sources à votre python. chemin.De cette façon, vous n'avez pas à coder en dur les choses dans les paramètres de votre interprète:
src
tant que racine de contenu source:PYTHONPATH
:De cette façon, vous pouvez ajouter tout ce que vous voulez en tant que racine source, et les choses fonctionneront simplement. Cependant, si vous ne l' avez pas marqué comme racine source, vous obtiendrez une erreur:
Après tout cela, n'oubliez pas de redémarrer. Dans le menu PyCharm, sélectionnez: Fichier -> Invalider les caches / redémarrer
la source
src
, nous avons unviews
dossier dans lequel j'aimyview.py
, je reçois toujours une erreur de référence non résolue lorsque j'essaiefrom src.views.myview import <my_function>
...__init__.py
fichier dans lesrc
dossiersrc
dossier en tant que racine sourcePYTHONPATH
(voir ci-dessus)la source
Si quelqu'un regarde toujours cela, la réponse acceptée fonctionne toujours pour PyCharm 2016.3 quand je l'ai essayé. L'interface utilisateur a peut-être changé, mais les options sont toujours les mêmes.
c'est à dire. Faites un clic droit sur votre dossier racine -> 'Mark Directory As' -> Source Root
la source
Après avoir testé toutes les solutions de contournement, je vous suggère de les consulter
Settings -> Project -> project dependencies
et de les réorganiser.la source
pygame
là-bas et pas plus de problème de référence non résolu!Normalement, $ PYTHONPATH est utilisé pour apprendre à l'interpréteur python à trouver les modules nécessaires . PyCharm doit ajouter le chemin dans Préférence.
la source
Généralement, il s'agit d'un problème de package manquant, placez simplement le signe d'insertion sur la référence non résolue et appuyez sur
Alt+Enter
pour révéler les options, puis vous devez savoir comment le résoudre.la source
Après avoir suivi la réponse acceptée, faire ce qui suit l'a résolu pour moi:
File
→Settings
→Project <your directory/project>
→Project Dependencies
Choisissez le répertoire / projet où réside votre fichier dont les importations non résolues et cochez la case pour indiquer à Pycharm que ce projet dépend de votre autre projet.
La hiérarchie de mon dossier est légèrement différente de celle de la question. Le mien est comme ça
Dire à Pycharm que src dépend de la résolution
MyDirectory
du problème pour moi!la source
Bien que toutes les réponses soient vraiment utiles, il y a une toute petite information qui devrait être expliquée explicitement:
.py
fichier et y créer un__init__.py
fichier (vide).Cela est utile parce que ce fichier est requis pour que Python traite le répertoire comme contenant des packages. À votre santé!
la source
Installez via PyCharm (fonctionne avec Community Edition). Ouvrez
Settings > Project > Project Interpreter
puis cliquez sur l'icône verte + dans la capture d'écran ci-dessous. Dans la 2ème boîte de dialogue qui s'ouvre, entrez le nom du package et cliquez sur le bouton «Installer le package».la source
Ce qui se produit souvent, c'est que le plugin n'est pas installé. par exemple
Si vous développez un projet django et que vous n'avez pas de plugin django installé dans pyCharm, il indique l'erreur «référence non résolue». Référez-vous à: https://www.jetbrains.com/pycharm/help/resolving-references.html
la source
Veuillez vérifier si vous utilisez le bon interprète que vous êtes censé utiliser. J'obtenais l'erreur "référence non résolue 'django'" pour résoudre ce problème. J'ai changé l'interpréteur de projet (changé Python 3 en Python 2.7) à partir des paramètres du projet: sélectionnez Projet, allez dans Fichier -> Paramètres -> Projet: -> Interprète de projet -> Brows et sélectionnez la version ou l'interpréteur correct (par exemple /usr/bin/python2.7).
la source
Dans mon cas, le problème était que j'utilisais
Virtual environment
qui n'avait pas accès aux packages de sites globaux. Ainsi, l'interpréteur n'était pas au courant des packages nouvellement installés.Pour résoudre le problème, modifiez ou recréez simplement votre interprète virtuel et cochez l'
Inherit global site-packages
option.la source
Cela a fonctionné pour moi:
Top Menu -> File -> Invalidate Caches/Restart
la source
Fait dans PyCharm 2019.3.1 Faites un clic droit sur votre dossier src -> "Marquer le répertoire comme" -> Cliquez sur "Exclus" et votre dossier src devrait être bleu.
la source
Pour moi, l'ajout du
venv
chemin des sites-packages de virtualenv ( ) aux chemins de l'interpréteur fonctionne. Finalement!la source
Pycharm utilise du venv. Dans la console du venv, vous devez installer les packages explicitement ou entrer
settings -> project interpreter -> add interpreter -> inherit global site-packages
.la source
Dans les versions plus récentes de pycharm, vous pouvez le faire simplement en cliquant avec le bouton droit sur le répertoire ou le package python à partir duquel vous souhaitez importer un fichier, puis cliquez sur 'Mark Directory As' -> 'Sources Root'
la source
La façon la plus simple de résoudre ce problème consiste à effectuer les opérations suivantes dans votre logiciel pyCharm:
Cliquez sur: Fichier> Paramètres> (Projet: le nom de votre projet)> Interprète de projet>
puis cliquez sur l'icône "+" sur le côté droit pour rechercher le package souhaité et l'installer.
Profitez du codage !!!
la source