【问题标题】:Mac - No module named 'scipy'Mac - 没有名为“scipy”的模块
【发布时间】:2020-01-21 01:36:09
【问题描述】:

我已经尝试了所有方法,但无法让 Scipy 工作。

通过 Homebrew 安装 Scipy,似乎工作正常 - 但尝试导入时出现错误。 卸载,通过pip3安装,没有区别。 Brew 修改,brew link(Scipy AND python 的未链接小桶的强制链接),没有进展。

在 macOS Mojave (10.14.6) 上运行。 Numpy、matplotlib 等等都运行良好。我在这里错过了什么?

我安装了两个版本的 python,但 Scipy 应该安装在 python3.7(我正在使用)中。见下文:

d37072:~ au341374$ brew info scipy
scipy: stable 1.3.0 (bottled), HEAD
Software for mathematics, science, and engineering
https://www.scipy.org
/usr/local/Cellar/scipy/1.3.0_1 (962 files, 47.3MB) *
  Poured from bottle on 2019-09-20 at 03:39:57
From: https://github.com/Homebrew/homebrew-core/blob/master/Formula/scipy.rb
==> Dependencies
Build: swig ✔
Required: gcc ✔, numpy ✔, openblas ✔, python ✔
==> Options
--HEAD
    Install HEAD version
'import sitecustomize' failed; use -v for traceback
'import sitecustomize' failed; use -v for traceback
==> Caveats
If you use system python (that comes - depending on the OS X version -
with older versions of numpy, scipy and matplotlib), you may need to
ensure that the brewed packages come earlier in Python's sys.path with:
  mkdir -p /Users/au341374/Library/Python/2.7/lib/python/site-packages
  echo 'import sys; sys.path.insert(1, "/usr/local/lib/python3.7/site-packages")' >> /Users/au341374/Library/Python/2.7/lib/python/site-packages/homebrew.pth
==> Analytics
install: 3,010 (30 days), 5,751 (90 days), 31,101 (365 days)
install_on_request: 2,070 (30 days), 3,613 (90 days), 19,312 (365 days)
build_error: 0 (30 days)

-

d37072:~ au341374$ pip3 install scipy
Requirement already satisfied: scipy in /usr/local/lib/python3.7/site-packages (1.3.1)
Requirement already satisfied: numpy>=1.13.3 in /usr/local/lib/python3.7/site-packages (from scipy) (1.16.4)


d37072:~ au341374$ brew install scipy
Warning: scipy 1.3.0_1 is already installed and up-to-date
To reinstall 1.3.0_1, run `brew reinstall scipy`

-

d37072:~ au341374$ brew link scipy
Warning: Already linked: /usr/local/Cellar/scipy/1.3.0_1
To relink: brew unlink scipy && brew link scipy


d37072:~ au341374$ brew link python
Warning: Already linked: /usr/local/Cellar/python/3.7.4_1
To relink: brew unlink python && brew link python

-

d37072:~ au341374$ brew doctor
Please note that these warnings are just used to help the Homebrew maintainers
with debugging if you file an issue. If everything you use Homebrew for is
working fine: please don't worry or file an issue; just ignore this. Thanks!

Warning: "config" scripts exist outside your system or Homebrew directories.
`./configure` scripts often look for *-config scripts to determine if
software packages are installed, and which additional flags to use when
compiling and linking.

Having additional scripts in your path can confuse software installed via
Homebrew if the config script overrides a system or Homebrew-provided
script of the same name. We found the following "config" scripts:
  /Library/Frameworks/Python.framework/Versions/3.7/bin/python3.7-config
  /Library/Frameworks/Python.framework/Versions/3.7/bin/python3.7m-config
  /Library/Frameworks/Python.framework/Versions/3.7/bin/python3-config
  /usr/local/munki/munkiwebadmin-config

-

d37072:~ au341374$ which -a python
/usr/local/bin/python
/usr/bin/python

d37072:~ au341374$ which -a pip
/usr/local/bin/pip

d37072:~ au341374$ which -a python3
/Library/Frameworks/Python.framework/Versions/3.7/bin/python3
/usr/local/bin/python3

d37072:~ au341374$ which -a pip3
/usr/local/bin/pip3

-

d37072:~ au341374$ pip -V
'import sitecustomize' failed; use -v for traceback
pip 19.1.1 from /usr/local/lib/python3.7/site-packages/pip (python 2.7)

d37072:~ au341374$ pip3 -V
pip 19.1.1 from /usr/local/lib/python3.7/site-packages/pip (python 3.7)

【问题讨论】:

  • 尝试导入 scipy 时出现什么错误?
  • 简单地说:ModuleNotFoundError: No module named 'scipy'

标签: python scipy pip homebrew


【解决方案1】:

好吧,不知何故无意中修复了它。 我卸载并重新安装了 numpy 和 scipy 几次都无济于事。 最后卸载了 numpy、scipy、matplotlib、ipython 和 jupyter,这样它就可以让我卸载 python。重新安装 python numpy 和 scipy 没有解决任何问题。 然后,运行后

pip3 install --user numpy scipy matplotlib ipython jupyter pandas sympy nose

我认为它做到了。 Scipy 和 numpy 现在显然已安装在

scipy in ./Library/Python/3.7/lib/python/site-packages (1.3.1)
numpy>=1.13.3 in ./Library/Python/3.7/lib/python/site-packages (from scipy) (1.17.2)

而不是在 usr/local/lib/Python3.7/site-packages 中安装它。

现在唯一奇怪的是 ./Library/Python/ 实际上只包含一个名为 2.7 而不是 3.7 的文件夹(没有隐藏文件夹)。 我很奇怪,但是嘿,它有效。

【讨论】:

    猜你喜欢
    • 2014-09-08
    • 2018-02-03
    • 1970-01-01
    • 2017-12-15
    • 2018-02-23
    • 2019-08-05
    • 1970-01-01
    • 1970-01-01
    • 2017-08-31
    相关资源
    最近更新 更多