110 votes

Import non résolues questions avec PyDev et Eclipse

Je suis très nouveau à PyDev et Python, mais j'ai utilisé Eclipse pour Java beaucoup. Je suis en train de travailler par le biais de certains de la Plongée En Python exemples et cela se sent comme un extrêmement trivial problème c'est juste de devenir extrêmement gênant. J'utilise Linux Ubuntu 10.04.

Je veux être en mesure d'utiliser le fichier odbchelper.py qui se trouve dans le répertoire /Desktop/Python_Tutorials/diveintopython/py

Voici mon example.py fichier que je suis en train de travailler dans mon PyDev/projet Eclipse:

import sys
sys.path.append("~/Desktop/Python_Tutorials/diveintopython/py")

Cela fonctionne bien, mais alors je veux que la prochaine ligne de mon code:

importation odbchelper

et ce sont les causes d'une non résolus à l'importation d'erreur à chaque fois. J'ai ajouté __init__.py fichiers à juste au sujet de chaque répertoire possible et cela n'aide pas quelque chose. J'ai essayé d'ajouter __init__.py fichiers un à un les différents niveaux de répertoires entre l'emplacement du projet et de la odbchelper.py fichier, et j'ai aussi essayé d'ajouter l' __init__.py fichiers de tous les répertoires entre les deux simultanément. Aucun ne fonctionne.

Tout ce que je veux faire est d'avoir un projet, quelque part dans un autre répertoire, par exemple /Desktop/MyStuff/Projet, dans lequel j'ai example.py ... et puis, à partir de example.py je veux importer odbchelper.py à partir de /Desktop/Python_Tutorials/diveintopython/py/

Chaque message de réponse du conseil d'administration, je peux trouver juste de dire d'utiliser le sys.chemin d'accès.append() pour ajouter ce répertoire à mon chemin, et de l'importer ensuite ... mais c'est précisément ce que je fais dans mon code et ça ne fonctionne pas.

J'ai aussi essayé le Ctrl-1 astuce pour supprimer le message d'erreur, mais le programme ne fonctionne toujours pas correctement. J'obtiens une erreur, ImportError: No module named odbchelper. Il est donc clairement de ne pas obtenir le chemin d'accès ajoutée, ou il y a un problème, alors que l'ensemble de mes grand nombre de permutations de l'ajout d' __init__.py fichiers a manqué.

C'est très frustrant que quelque chose d'aussi simple... appeler les choses à partir d'un fichier qui existe quelque part d'autre sur ma machine... exige autant d'efforts.

136voto

David German Points 1176

Dans les propriétés de votre projet de pydev, il y a un volet appelé « PyDev – PYTHONPATH », avec un volet secondaire appelé « Bibliothèques externes ». Vous pouvez ajouter des dossiers sources (n’importe quel dossier qui a une `` ) pour le chemin d’accès à l’aide de ce volet. Votre projet de code sera alors en mesure d’importer des modules de ces dossiers source.

42voto

Paul Points 301

Je viens de mettre un WXWindows projet de Python 2.7 et n'avait pas de fin de difficulté à obtenir Pydev à reconnaître le nouvel interprète. Fait la même chose qu'au-dessus de la configuration de l'interprète, fait une nouvelle installation d'Eclipse et Pydev. La pensée d'une partie de python doit avoir été corrompu, donc j'ai ré-installé tout nouveau. Arghh! Fermé et rouvert le projet, et de redémarrer Eclipse entre tous ces changements.

ENFIN, vous avez remarqué que vous pouvez 'supprimer la PyDev projet de config' par un clic droit sur le projet. Ensuite, il peut être fait dans un PyDev projet de nouveau, maintenant, il est bon que l'or!

18voto

Martin Points 86

J’ai fixé mon pythonpath et tout était dandy quand j’ai importé les choses par le biais de la console, mais toutes ces importations précédemment non résolues étaient encore marquées comme des erreurs dans mon code, peu importe combien de fois j’ai redémarré éclipse ou rafraîchi/nettoyer le projet.

J’ai un clic droit le projet-> Pydev-> supprimer des marqueurs erreur et il s’est débarrassé de ce problème. Ne vous inquiétez pas, si votre code contient des erreurs effectives, qu'ils seront re-marqués.

11voto

zhaokongsheng Points 11

projet--> propriétés--> pydev-pythonpath--> des bibliothèques externes--> ajouter source dossier, ajoutez le dossier PARENT du projet. Puis redémarrez eclipse.

5voto

Brana Points 153

Voici ce qui a fonctionné pour moi (sugested de soulBit) :

Il s’agit de la solution la plus simple jamais et il enlève complètement l’ennuyeux.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X