ImportError: aucun module nommé scipy

87

J'utilise Python 2.7 et j'essaie de faire fonctionner PyBrain.

Mais j'obtiens cette erreur même si scipy est installé -

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/lib/python2.7/site-packages/PyBrain-0.3.1-
py2.7.egg/pybrain/__init__.py", line 1, in <module>
    from pybrain.structure.__init__ import *
  File "/usr/local/lib/python2.7/site-packages/PyBrain-0.3.1-py2.7.egg/pybrain/structure/__init__.py", line 1, in <module>
    from pybrain.structure.connections.__init__ import *
  File "/usr/local/lib/python2.7/site-packages/PyBrain-0.3.1-py2.7.egg/pybrain/structure/connections/__init__.py", line 1, in <module>
    from pybrain.structure.connections.full import FullConnection
  File "/usr/local/lib/python2.7/site-packages/PyBrain-0.3.1-py2.7.egg/pybrain/structure/connections/full.py", line 3, in <module>
    from scipy import reshape, dot, outer
ImportError: No module named scipy

J'ai installé scipy en utilisant cette commande -

sudo apt-get install python-scipy

Je reçois -

Reading package lists... Done
Building dependency tree       
Reading state information... Done
python-scipy is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

Que devrais-je faire?

ihmpall
la source
python -c 'import scipy; print(scipy)'? which python? python -c 'import sys; print(sys.path)?
Fred Foo
Traceback (dernier appel en dernier): Fichier "<string>", ligne 1, dans <module> ImportError: Aucun module nommé scipy et son python 2.7.5
ihmpall
y a-t-il une solution sans sudo?
Charlie Parker
Pour les utilisateurs de Windows
Martin Thoma

Réponses:

146

Essayez de l'installer en tant que package python à l'aide de pip. Vous avez dit que vous aviez déjà essayé:

sudo apt-get install python-scipy

Maintenant, exécutez:

pip install scipy

J'ai couru les deux et cela a fonctionné sur ma boîte basée sur Debian.

BostonGeorge
la source
Je ne peux pas sudo ... y a-t-il une autre solution? Je ne comprends pas quel était le problème et pourquoi cela a-t-il résolu le problème?
Charlie Parker
@DragonSpit Si vous avez python 3, vous devez utiliser les noms correspondants: python3-scipyet pip3.
Alexis Wilke le
19

Pour assurer une installation facile et correcte de python, utilisez pip dès le départ

Pour installer pip:

$ wget https://bootstrap.pypa.io/get-pip.py
$ sudo python2 get-pip.py   # for python 2.7
$ sudo python3 get-pip.py   # for python 3.x

Pour installer scipy à l'aide de pip:

$ pip2 install scipy    # for python 2.7
$ pip3 install scipy    # for python 3.x

la source
8

Pour les utilisateurs de Windows:

J'ai trouvé cette solution après des jours. Tout d'abord, quelle version de Python souhaitez-vous installer?

Si vous voulez pour la version Python 2.7:

ÉTAPE 1:

scipy-0.19.0-cp27-cp27m-win32.whl

scipy-0.19.0-cp27-cp27m-win_amd64.whl

numpy-1.11.3 + mkl-cp27-cp27m-win32.whl

numpy-1.11.3 + mkl-cp27-cp27m-win_amd64.whl

Si vous voulez la version Python 3.4:

scipy-0.19.0-cp34-cp34m-win32.whl

scipy-0.19.0-cp34-cp34m-win_amd64.whl

numpy-1.11.3 + mkl-cp34-cp34m-win32.whl

numpy-1.11.3 + mkl-cp34-cp34m-win_amd64.whl

Si vous voulez la version Python 3.5:

scipy-0.19.0-cp35-cp35m-win32.whl

scipy-0.19.0-cp35-cp35m-win_amd64.whl

numpy-1.11.3 + mkl-cp35-cp35m-win32.whl

numpy-1.11.3 + mkl-cp35-cp35m-win_amd64.whl

Si vous voulez la version Python 3.6:

scipy-0.19.0-cp36-cp36m-win32.whl

scipy-0.19.0-cp36-cp36m-win_amd64.whl

numpy-1.11.3 + mkl-cp36-cp36m-win32.whl

numpy-1.11.3 + mkl-cp36-cp36m-win_amd64.whl

Lien: [cliquez sur [1]

Une fois l'installation terminée, accédez à votre répertoire.

Par exemple mon annuaire:

cd C:\Users\asus\AppData\Local\Programs\Python\Python35\Scripts>
pip install [where/is/your/downloaded/scipy_whl.]

ÉTAPE 2:

Numpy + MKL

À partir du même site Web basé sur la version python à nouveau:

Après cela, utilisez à nouveau la même chose dans le dossier Script

cd C:\Users\asus\AppData\Local\Programs\Python\Python35\Scripts>
pip3 install [where/is/your/downloaded/numpy_whl.]

Et testez-le dans le dossier python.

Python35>python 
Python 3.5.2 (v3.5.2:4def2a2901a5, Jun 25 2016, 22:18:55) [MSC v.1900 64 bit (AMD64)] on win32 Type "help", "copyright", "credits" or "license" for more information. 
>>>import scipy
Beyhan Gül
la source
2
Merci, cela a fonctionné pour moi. Pour gagner du temps, nous pouvons trouver ces roues ici silx.org/pub/wheelhouse :)
Raviraj Subramanian
5

Si vous avez besoin d'accéder scipyà votre environnement Pyhton sous Windows, vous pouvez obtenir les fichiers * .whl ici:

http://www.lfd.uci.edu/~gohlke/pythonlibs/#scipy

N'oubliez pas que vous devez installer numpy+mklavant de pouvoir installer scipy.

http://www.lfd.uci.edu/~gohlke/pythonlibs/#numpy

Une fois que vous avez téléchargé les fichiers * .whl corrects, ouvrez simplement une invite cmd dans le répertoire de téléchargement et exécutez pip install *.whl.

Ogglas
la source
5

J'ai eu le même problème car j'ai installé à la fois python2.7 et python3. quand j'exécute le programme avec python3, j'ai reçu la même erreur. J'installe scipy avec cette commande et le problème a été résolu:

sudo apt-get install python3-scipy
Karim Pazoki
la source
3

Je vous recommande de supprimer scipy via

apt-get purge scipy

puis de l'installer en

pip install scipy

Si vous faites les deux, vous risquez de confondre votre gestionnaire de paquets deb en raison de versions éventuellement différentes.

thomas.mc.work
la source
3

Essayez de l'installer en tant que package python en utilisant pip comme suit

$ sudo apt-get install python-scipy

Si vous souhaitez exécuter un script python 3.x, installez scipy en:

$ pip3 install scipy
Otherwise install it by:
$ pip install scipy
yahani manawadu
la source
3

Pour les utilisateurs Windows: pip install -U scipy

Shrinath Joshi
la source
3

si vous utilisez pycharm, allez dans les paramètres et dans le sous-onglet interpréteur de projet, cliquez sur le signe "+" à côté de la liste et dans la barre de recherche, recherchez le nom "scipy" et installez le paquet.

scipy

MMRA
la source
1

Votre python ne sait pas où vous avez installé scipy. ajoutez le chemin scipy PYTHONPATHet j'espère que cela résoudra votre problème.

RealityPC
la source
Salut.Merci beaucoup mais pouvez-vous me donner la commande pour faire ça? Linux newbie,
ihmpall
Si vous utilisez bash, dans votre fichier de profil bash, vous pouvez ajouter cette ligneexport PYTHONPATH="/path/to/scipy:$PYTHONPATH"
RealityPC
1

Mon problème était que j'avais mal orthographié l'une des bibliothèques lors de l'installation avec pip3, ce qui a fini par empêcher l'installation de toutes les autres bibliothèques téléchargées dans la même commande. Exécutez à nouveau pip3 install sur eux et ils devraient être installés à partir de leur cache.

Akash Agarwal
la source
1

Cela peut être trop basique (et peut-être supposable), mais -

Les utilisateurs de Fedora peuvent utiliser:

sudo dnf install python-scipy

puis (pour python3.x):

pip3 install scipy

ou (pour python2.7):

pip2 install scipy

R4444
la source