Comment utiliser les packages installés dans PyCharm?

200

Dans PyCharm , j'ai ajouté l'environnement Python /usr/bin/python. cependant,

from gnuradio import gr

échoue en tant que référence non définie . Cependant, cela fonctionne très bien dans l'interpréteur Python à partir de la ligne de commande.

GNURadio fonctionne très bien avec python en dehors de Pycharm. Tout est installé et configuré comme je le veux.

Gnuradio est situé à /usr/local/lib/python2.7/site-packages/gnuradio

Aussi:

PYTHONPATH = / usr / local / lib / python2.7 / site-packages: /usr/local/lib/python2.7/site-packages/gnuradio

smurff
la source
1
Ok, alors comment avez-vous installé gnuradio?
LotusUNSW
1
Vous pouvez installer gnuradio à partir des référentiels disponibles dans PyCharm. PyCharm -> Préférences (Paramètres sous Windows) -> Projet -> Interprète de projet -> cliquez sur la section de connexion «+» des packages et recherchez le package requis. Vous devrez peut-être ajouter des référentiels si le package requis n'est pas disponible dans les référentiels déjà ajoutés. HTH.
avp

Réponses:

229

Ajout d'un chemin

Allez dans Fichier → Paramètres → Paramètres du projet → Interprète de projet.

Appuyez ensuite sur configurer l'interpréteur et accédez à l'onglet "Chemins".

onglet du chemin pycharm

Appuyez sur le bouton + dans la zone Chemins. Vous pouvez mettre le chemin vers le module que vous souhaitez qu'il reconnaisse.

Mais je ne connais pas le chemin ..

Ouvrez l'interpréteur python où vous pouvez importer le module.

>> import gnuradio
>> gnuradio.__file__
"path/to/gnuradio"

Le plus souvent, vous aurez une structure de dossiers comme celle-ci:

foobarbaz/
  gnuradio/
    __init__.py
    other_file.py

Vous voulez ajouter foobarbaz au chemin ici.

Brigand
la source
@smurff, vous avez probablement mis le mauvais chemin. Il doit s'agir du répertoire contenant un dossier ou un fichier .py nommé gnuradio. Voir la réponse mise à jour.
Brigand
Fermer, pour une raison quelconque, j'ai dû ajouter le répertoire parrent: /usr/local/lib/python2.7/sitepackages au lieu de ... / sitepackages / gnuradio comme prévu. Ça n'a pas beaucoup de sens. Cependant, maintenant je reçois plus d'erreurs référençant les bibliothèques partagées:
smurff
12
@FakeRainBrigand Impossible de voir l'onglet Chemins dans PyCharm4.
Ankesh Anand
87
Dans PyCharm 4 CE: accédez à «Project Interpreter». Cliquez sur l'engrenage à droite du chemin de l'interprète. Il fera apparaître un petit menu déroulant, à partir duquel vous devez sélectionner "Plus ..". Sur le côté droit du nouveau pop-up, il y aura une icône avec le texte de la souris sur "Afficher les chemins pour l'interpréteur sélectionné". Cliquez sur ce bouton. Ce nouveau pop-up 'Interpreter Paths' est l'endroit où vous pouvez ajouter des chemins. @AnkeshAnand
TheGrimmScientist
3
Pour les utilisateurs Mac, appuyez sur le PyCharm en haut à gauche puis sur Préférences ...-> Projet-> Interprète de +
projet-
94

Vous ne devriez jamais avoir besoin de modifier le chemin directement, que ce soit via des variables d'environnement ou sys.path. Que vous utilisiez le système d'exploitation (ex. apt-get) Ou pipdans un virtualenv, les packages seront installés à un emplacement déjà sur le chemin.

Dans votre exemple, GNU Radio est installé à l' site-packagesemplacement standard du système Python 2 , qui se trouve déjà dans le chemin. Il suffit de pointer PyCharm vers le bon interprète; si ce n'est pas le cas, il y a autre chose qui ne va pas. Il se peut que /usr/bin/pythoncela ne pointe pas vers le même interpréteur dans lequel GNU Radio a été installé; essayez de pointer spécifiquement sur le python2.7binaire. Ou, PyCharm était un peu mauvais pour détecter les paquets; File > Invalidate Caches > Invalidate and Restartlui dirait de réanalyser.

Cette réponse couvrira comment vous devez configurer un environnement de projet, installer des packages dans différents scénarios et configurer PyCharm. Je me réfère plusieurs fois au Guide de l'utilisateur de l'empaquetage Python , écrit par le même groupe qui maintient les outils d'empaquetage Python officiels.


La bonne façon de développer une application Python est d'utiliser un virtualenv. Les packages et la version sont installés sans affecter le système ou d'autres projets. PyCharm a une interface intégrée pour créer un virtualenv et installer des packages. Ou vous pouvez le créer à partir de la ligne de commande, puis pointer PyCharm vers lui.

$ cd MyProject
$ python2 -m virtualenv env
$ . env/bin/activate
$ pip install -U pip setuptools  # get the latest versions
$ pip install flask  # install other packages

Dans votre projet PyCharm, accédez à File > Settings > Project > Project Interpreter. Si vous avez utilisé virtualenvwrapperou PyCharm pour créer l'env, alors il devrait apparaître dans le menu. Sinon, cliquez sur l'engrenage, choisissez Add Localet localisez le binaire Python dans l'env. PyCharm affichera tous les packages dans l'environnement sélectionné.

choisissez un env

localiser manuellement env


Dans certains cas, comme avec GNU Radio, il n'y a pas de package à installer pip, le package a été installé à l'échelle du système lorsque vous installez le reste de GNU Radio (ex. apt-get install gnuradio). Dans ce cas, vous devez toujours utiliser un virtualenv, mais vous devrez lui faire connaître ce package système.

$ python2 -m virtualenv --system-site-packages env

Malheureusement, cela semble un peu désordonné, car tous les packages système apparaîtront maintenant dans votre env, mais ce ne sont que des liens, vous pouvez toujours installer ou mettre à niveau des packages en toute sécurité sans affecter le système.


Dans certains cas, vous aurez plusieurs packages locaux que vous développez et voudrez qu'un projet utilise l'autre package. Dans ce cas, vous pourriez penser que vous devez ajouter le package local au chemin de l'autre projet, mais ce n'est pas le cas. Vous devez installer votre package en mode développement . Tout cela nécessite d' ajouter un setup.pyfichier à votre package , qui sera de toute façon requis pour distribuer et déployer correctement le package ultérieurement.

Minimal setup.pypour votre premier projet:

from setuptools import setup, find_packages

setup(
    name='mypackage',
    version='0.1',
    packages=find_packages(),
)

Installez-le ensuite dans l'env de votre second projet:

$ pip install -e /path/to/first/project
davidisme
la source
51

Pour moi, il s'agissait simplement de marquer le répertoire comme racine source.

michaelsnowden
la source
3
Cela a fonctionné pour moi, faites un clic droit sur le répertoire, puis marquez le répertoire comme: racine des sources. Merci @michaelsnowden
lmiguelvargasf
2
A travaillé pour moi; ce qui est bizarre, c'est que c'est comme mon 15e projet PyCharm et la première fois que j'ai dû faire ça.
Rob Osborne
1
Mes modules locaux pouvaient être trouvés lors de l'exécution, mais montrés avec des gribouillis rouges comme s'ils ne pouvaient pas être vus. «marquer le répertoire comme racine des sources» a supprimé le gribouillis, mais pas sûr que ce soit la bonne méthode.
Kim Miller
savez-vous quelle est la racine source par défaut de pycharm, si elle n'est pas spécifiée?
Kanishk Tanwar
41

Ma version est PyCharm Professional édition 3.4, et la partie Ajouter un chemin est différente.

Vous pouvez aller dans "Préférences" -> "Interprète de projet". Choisissez le bouton outil dans le coin supérieur droit.

Choisissez ensuite "Plus ..." -> "Afficher le chemin de l'interpréteur sélectionné" -> "Ajouter". Ensuite, vous pouvez ajouter un chemin.

chenlian
la source
3
Pour moi au moins, quand je fais ça et clique sur "ok", je reviens en arrière, je trouve que ça ne marche toujours pas. Ensuite, je reviens à la liste des chemins associés à l'interpréteur actuel et constate que le chemin que je viens d'ajouter est parti.
Peter
après avoir ajouté le chemin, vous devez cliquer sur le rafraîchissement. ferme la fenêtre. maintenant le bouton appliquer n'est pas actif. changez les paramètres et cliquez sur Appliquer s'il est actif
JuKe
40

Ajouter un chemin dans PyCharm 2017

Fichier -> Paramètres (ou Ctrl + Alt + S) -> Projet -> Interprète de projet

entrez la description de l'image ici Afficher tout

entrez la description de l'image ici Sélectionnez l'icône du bas sur le côté droit

entrez la description de l'image ici Cliquez sur le bouton plus pour ajouter un nouveau chemin à votre module

Dorin
la source
Enfin réponse normale, je voulais juste savoir où coller le dossier par défaut pip size_packages.
Stav Bodik
J'ai fait de même pour ajouter le chemin d'accès à un fichier .jar donc je peux utiliser certaines bibliothèques java. Cependant, je ne sais pas comment spécifier le fichier jar et qu'il est censé être utilisé par mon script. Pourriez-vous m'aider davantage?
JRsz
Merci! Le deuxième chiffre est la clé!
Vej
5

NE changez PAS le chemin de l'interpréteur.

Modifiez plutôt la structure du projet:

Fichier -> Paramètres -> Projet -> Structure du projet -> Ajouter une racine de contenu

Daniel Braun
la source
1
Merci, fonctionne très bien si les importations du projet semblent rompues.
om2c0de
3

Pour PyCharm Community Edition 2016.3.2, c'est:

"Project Interpreter" -> Icône de paramètres en haut à droite -> "Plus".

Ensuite, sur le côté droit, il devrait y avoir une icône de packages. Lorsque vous le survolez, il devrait indiquer "Afficher les chemins pour l'interpréteur sélectionné". Cliquez dessus.

Cliquez ensuite sur le bouton "Ajouter" ou appuyez sur "alt + insert" pour ajouter un nouveau chemin.

Wesley
la source
1

Dans l'Explorateur de projets, vous pouvez cliquer avec le bouton droit sur le dossier où se trouve le module et définir comme «Source».

Il sera analysé dans l'index pour l'achèvement du code ainsi que d'autres éléments.


la source
Mes modules locaux pouvaient être trouvés lors de l'exécution, mais montrés avec des gribouillis rouges comme s'ils ne pouvaient pas être vus. «marquer le répertoire comme racine des sources» a supprimé le gribouillis, mais pas sûr que ce soit la bonne méthode.
Kim Miller
0

Comme solution rapide et sale, cela a fonctionné pour moi: Ajout de ces 2 lignes avant l'importation problématique:

import sys
sys.path.append('C:\\Python27\\Lib\site-packages')
rundekugel
la source
0

Je suis nouveau sur PyCharm (utilisant 2018.3.4 CE) et Python, j'ai donc essayé à distance de suivre chacune des suggestions ci-dessus pour accéder au package PIL (Pillow) que je savais être dans les packages système-site. Aucun n'a fonctionné. J'étais sur le point d'abandonner pour la nuit quand j'ai remarqué le fichier venv / pyvenv.cfg sous mon projet dans la fenêtre de l'Explorateur de projets. J'ai trouvé la ligne "include-system-site-packages = false" dans ce fichier et je l'ai donc remplacée par "true". Problème résolu.

user3397407
la source
0

Dans PyCharm 2020.1 CE et Professional, vous pouvez ajouter un chemin d'accès à l'interpréteur Python de votre projet en procédant comme suit:

1) Cliquez sur l'interpréteur dans le coin inférieur droit du projet et sélectionnez «Paramètres d'interprète»

Sélectionnez les paramètres de l'interpréteur

2) Cliquez sur le bouton des paramètres à droite du nom de l'interprète et sélectionnez «Afficher tout»:

Sélectionnez Afficher tous les interprètes

3) Assurez-vous que l'interpréteur de votre projet est sélectionné et cliquez sur le cinquième bouton dans la barre d'outils du bas, 'afficher les chemins pour l'interpréteur sélectionné':

Afficher les chemins pour l'interpréteur Python sélectionné

4) Cliquez sur le bouton '+' dans la barre d'outils inférieure et ajoutez un chemin d'accès au dossier contenant votre module:

entrez la description de l'image ici

GingerBreadMane
la source
-1

Télécharger anaconda https://anaconda.org/

une fois l'installation anaconda terminée ...

Allez dans Paramètres -> Paramètres du projet -> Interprète de projet.

Ensuite, accédez à l'onglet "Chemins" et recherchez / anaconda / bin / python

cliquez sur appliquer

entrez la description de l'image ici

Jmitsh
la source