ImportError: Nenhum módulo denominado scipy

87

Estou usando o Python 2.7 e tentando fazer o PyBrain funcionar.

Mas recebo este erro mesmo com o scipy instalado -

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

Eu instalei o scipy usando este comando -

sudo apt-get install python-scipy

Eu recebo -

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.

O que devo fazer?

ihmpall
fonte
python -c 'import scipy; print(scipy)'? which python? python -c 'import sys; print(sys.path)?
Fred Foo
Traceback (última chamada mais recente): Arquivo "<string>", linha 1, em <module> ImportError: Nenhum módulo chamado scipy e seu python 2.7.5
ihmpall
existe uma solução sem sudo?
Charlie Parker
Para usuários do Windows
Martin Thoma

Respostas:

146

Tente instalá-lo como um pacote python usando pip. Você disse que já tentou:

sudo apt-get install python-scipy

Agora execute:

pip install scipy

Executei ambos e funcionou na minha caixa baseada em Debian.

BostonGeorge
fonte
Eu não consigo sudo ... existe outra solução? Não entendo qual era o problema e por que isso resolveu o problema?
Charlie Parker
@DragonSpit Se você tiver python 3, precisará usar os nomes correspondentes: python3-scipye pip3.
Alexis Wilke
19

Para garantir uma instalação fácil e correta para python, use pip desde o início

Para instalar o 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

Para instalar o scipy usando pip:

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

fonte
8

Para usuários do Windows:

Eu encontrei essa solução depois de dias. Em primeiro lugar, qual versão do Python você deseja instalar?

Se você deseja a versão Python 2.7:

PASSO 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

Se você deseja a versão 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

Se você deseja a versão 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

Se você deseja a versão 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

Link: [clique [1]

Assim que terminar a instalação, vá para o seu diretório.

Por exemplo, meu diretório:

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

PASSO 2:

Numpy + MKL

Do mesmo site baseado na versão python novamente:

Depois disso use a mesma coisa novamente na pasta Script

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

E teste na pasta 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
fonte
2
Obrigado, funcionou para mim. Para economizar tempo, podemos encontrar essas rodas aqui silx.org/pub/wheelhouse :)
Raviraj Subramanian
5

Eu tive o mesmo problema porque instalei o python2.7 e o python3. quando executo o programa com python3 recebi o mesmo erro. Eu instalo o scipy com este comando e o problema foi resolvido:

sudo apt-get install python3-scipy
Karim Pazoki
fonte
3

Eu recomendo que você remova o scipy via

apt-get purge scipy

e então instalá-lo por

pip install scipy

Se você fizer ambos, poderá confundir o gerenciador de pacotes deb devido a possíveis versões diferentes.

thomas.mc.work
fonte
3

Tente instalá-lo como um pacote python usando pip da seguinte maneira

$ sudo apt-get install python-scipy

Se você deseja executar um script python 3.x, instale o scipy por:

$ pip3 install scipy
Otherwise install it by:
$ pip install scipy
Yahani Manawadu
fonte
3

Para usuário do Windows: pip install -U scipy

Shrinath Joshi
fonte
3

se você estiver usando o pycharm, vá para as configurações e na subguia do interpretador de projetos, clique no sinal "+" ao lado da lista e na barra de pesquisa procure o nome "scipy" e instale o pacote.

scipy

MMRA
fonte
1

Seu python não sabe onde você instalou o scipy. adicione o caminho scipy a PYTHONPATHe espero que ele resolva seu problema.

RealityPC
fonte
Oi. Muito obrigado, mas você pode me dar o comando para fazer isso? Linux newbie,
ihmpall
Se você estiver usando o bash, em seu arquivo de perfil do bash, você pode adicionar esta linhaexport PYTHONPATH="/path/to/scipy:$PYTHONPATH"
RealityPC
1

Meu problema é que eu digitei uma das bibliotecas incorretamente ao instalar com pip3, o que acabou fazendo com que todas as outras bibliotecas baixadas no mesmo comando não fossem instaladas. Basta executar pip3 install neles novamente e eles devem ser instalados a partir de seu cache.

Akash Agarwal
fonte
1

Isso pode ser muito básico (e talvez presumível), mas -

Os usuários do Fedora podem usar:

sudo dnf install python-scipy

e então (para python3.x):

pip3 install scipy

ou (para python2.7):

pip2 install scipy

R4444
fonte