ImportError: Kein Modul namens scipy


86

Ich verwende Python 2.7 und versuche, PyBrain zum Laufen zu bringen.

Aber ich bekomme diesen Fehler, obwohl scipy installiert ist -

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

Ich habe scipy mit diesem Befehl installiert -

sudo apt-get install python-scipy

Ich bekomme -

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.

Was soll ich machen?


python -c 'import scipy; print(scipy)'? which python? python -c 'import sys; print(sys.path)?
Fred Foo

Traceback (letzter Aufruf zuletzt): Datei "<string>", Zeile 1, in <module> ImportError: Kein Modul namens scipy und sein Python 2.7.5
ihmpall

Gibt es eine Lösung ohne Sudo?
Charlie Parker

Antworten:


145

Versuchen Sie, es mit pip als Python-Paket zu installieren. Sie sagten, Sie haben es bereits versucht:

sudo apt-get install python-scipy

Führen Sie jetzt aus:

pip install scipy

Ich habe beide ausgeführt und es hat auf meiner Debian-basierten Box funktioniert.


Ich kann nicht sudo ... gibt es eine andere Lösung? Ich verstehe nicht, was das Problem war und warum hat das das Problem gelöst?
Charlie Parker

@DragonSpit Wenn Sie Python 3 haben, müssen Sie die entsprechenden Namen verwenden: python3-scipyund pip3.
Alexis Wilke

18

Um eine einfache und korrekte Installation für Python zu gewährleisten, verwenden Sie pip von Anfang an

So installieren Sie 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

So installieren Sie scipy mit pip:

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

8

Für Windows-Benutzer:

Ich habe diese Lösung nach Tagen gefunden. Erstens, welche Python-Version möchten Sie installieren?

Wenn Sie für Python 2.7 Version wollen:

SCHRITT 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

Wenn Sie für Python 3.4 Version wollen:

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

Wenn Sie für Python 3.5 Version wollen:

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

Wenn Sie für Python 3.6 Version wollen:

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

Link: [klick [1]

Wechseln Sie nach Abschluss der Installation in Ihr Verzeichnis.

Zum Beispiel mein Verzeichnis:

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

SCHRITT 2:

Numpy + MKL

Von derselben Website, die wieder auf der Python-Version basiert:

Verwenden Sie danach dasselbe erneut im Skriptordner

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

Und testen Sie es im Python-Ordner.

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

2
Danke, es hat bei mir funktioniert. Um etwas Zeit zu sparen, finden wir diese Räder hier silx.org/pub/wheelhouse :)
Raviraj Subramanian

5

Wenn Sie unter scipyWindows in Ihre Pyhton-Umgebung gelangen müssen, können Sie die * .whl-Dateien hier herunterladen:

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

Denken Sie daran, dass Sie installieren müssen, numpy+mklbevor Sie installieren können scipy.

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

Wenn Sie die richtigen * .whl-Dateien heruntergeladen haben, öffnen Sie einfach eine cmd-Eingabeaufforderung im Download-Verzeichnis und führen Sie sie aus pip install *.whl.


4

Ich hatte das gleiche Problem, weil ich sowohl Python2.7 als auch Python3 installiert habe. Wenn ich ein Programm mit Python3 starte, habe ich den gleichen Fehler erhalten. Ich installiere scipy mit diesem Befehl und das Problem wurde behoben:

sudo apt-get install python3-scipy

3

Ich empfehle Ihnen, scipy via zu entfernen

apt-get purge scipy

und dann zu installieren von

pip install scipy

Wenn Sie beides tun, können Sie Ihren Deb-Paket-Manager aufgrund möglicherweise unterschiedlicher Versionen verwirren.


3

Versuchen Sie, es mit pip wie folgt als Python-Paket zu installieren

$ sudo apt-get install python-scipy

Wenn Sie ein Python 3.x-Skript ausführen möchten, installieren Sie scipy mit:

$ pip3 install scipy
Otherwise install it by:
$ pip install scipy


3

Wenn Sie pycharm verwenden, gehen Sie zu den Einstellungen und klicken Sie in der Unterregisterkarte des Projektinterpreters auf das Pluszeichen "+" neben der Liste und in der Suchleiste dort auf den Suchnamen "scipy" und installieren Sie das Paket.

scipy


1

Ihr Python weiß nicht, wo Sie scipy installiert haben. Fügen Sie den Scipy-Pfad hinzu PYTHONPATHund ich hoffe, er wird Ihr Problem lösen.


Hallo. Vielen Dank, aber können Sie mir den Befehl dazu geben? Linux-Neuling,
ihmpall

Wenn Sie bash verwenden, können Sie in Ihrer Bash-Profildatei diese Zeile hinzufügenexport PYTHONPATH="/path/to/scipy:$PYTHONPATH"
RealityPC

1

Mein Problem war, dass ich bei der Installation mit pip3 eine der Bibliotheken falsch geschrieben habe, wodurch alle anderen heruntergeladenen Bibliotheken im selben Befehl nicht installiert wurden. Führen Sie einfach erneut pip3 install auf ihnen aus und sie sollten aus ihrem Cache installiert werden.


1

Dies mag zu grundlegend sein (und vielleicht angenommen werden), aber -

Fedora-Benutzer können Folgendes verwenden:

sudo dnf install python-scipy

und dann (für python3.x):

pip3 install scipy

oder (für Python2.7):

pip2 install scipy

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.