J'ai réussi à installer Spyder et à l'utiliser sur mon Mac, mais je souhaite ajouter quelques modules qu'il n'inclut pas par défaut (mahotas et pymorph).
J'ai installé les deux via easy_install dans le terminal et les deux semblaient s'installer sans aucun message d'erreur. Exécuter python depuis un terminal et utiliser import mahotas et import pymorph fonctionne parfaitement sans message d'erreur. Cependant, lorsque j'exécute les mêmes lignes à partir d'un script dans Spyder, l'erreur suivante apparaît:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/spyderlib/widgets/externalshell/sitecustomize.py", line 493, in runfile
execfile(filename, namespace)
File "/Users/Name/Documents/Python/dna.py", line 11, in <module>
import pymorph
ImportError: No module named pymorph
Tout ce que j'essaie de faire pour l'instant, c'est de lancer les lignes d'importation, c'est tout. Je n'arrive pas à trouver quoi que ce soit à ce sujet. Je suppose que spyder utilise une installation séparée de python et que l’installation de modules via le terminal ne les installe que dans la version système de python. Comment puis-je les ajouter à spyder?
Spécifications:
Mac OSX 10.7.4
Spyder 2.1.9
Ok, personne n’a encore répondu à cette question, mais j’ai réussi à le comprendre et à le faire fonctionner après la publication sur les forums de discussion des espions. Pour toutes les bibliothèques que vous souhaitez ajouter qui ne figurent pas dans le chemin de recherche par défaut de spyder, vous devez accéder à Tools et ajouter un chemin à each library via le gestionnaire PYTHONPATH. Vous devrez ensuite mettre à jour la liste des noms de modules à partir du même menu et redémarrer Spyder avant que les modifications ne prennent effet.
L'utilisation de !
sur la console IPython dans Spyder vous permet d'utiliser pip
. Donc, dans l'exemple, vous pourriez faire:
[1] !pip install pymorph
Notez que ceci est également disponible (bien que peut-être de manière non fiable) sur la console Python pour les versions de Spyder antérieures à ~ 2.3.3. Merci à @CarlosCordoba pour cette clarification.
Trouver l'emplacement d'un module dans Terminal:
$ python # open python
import pygame # import a module
pygame # get the location
Copiez-collez le dossier du module dans le dossier 'Spyder.app/Contents/Resources/lib/python2.7'
Relancer Spyder.app
Si vous utilisez Spyder dans le package Anaconda ...
Dans la console IPython, utilisez
!conda install packageName
Cela fonctionne localement aussi.
!conda install /path/to/package.tar
Noter la ! est requis lors de l'utilisation de la console IPython à partir de Spyder.
il suffit d'utiliser '!' avant la commande pip dans le terminal de Spyder et tout ira bien
Par exemple:
!pip install imutils
Vous pouvez ajouter l'emplacement d'installation standard au gestionnaire PYTHONPATH. De cette façon, vous n'avez pas besoin d'ajouter un chemin spécifique pour chaque module. Seulement pour mettre à jour les noms de modules.
Sous Unix, cet emplacement est généralement:
/usr/local/lib/pythonX.Y/site-packages
Sous Windows:
C:\PythonXY\Lib\site-packages
J'ai rencontré le même problème en essayant d'ajouter le module Seaborn dans Spyder. J'ai installé seaborn dans mon répertoire anaconda dans Ubuntu 14.04. Le module seaborn se chargerait si j'y ajoutais l'ensemble du répertoire anaconda/lib/python2.7/site-packages/qui contenait les dossiers 'seaborn' et seaborn-0.5.1-py2.7.Egg-info. Le problème était que ce dossier site-packages anaconda contenait également de nombreux autres modules que Spyder n’a pas aimés.
Ma solution: J'ai créé un nouveau répertoire dans mon dossier personnel que j'ai nommé 'spyderlibs', où j'ai placé les dossiers seaborn et seaborn-0.5.1-py2.7.Egg-info. L'ajout de mon nouveau répertoire spyderlib dans le gestionnaire PYTHONPATH de Spyder a fonctionné!
On peut également suivre les étapes ci-dessous: Spyder -> Outils -> Ouvrir l’invite de commande -> écrire la commande "pip install html5lib"