确保已安装 Python 和 pip
在安装 scipy 之前,请确保您的系统上已经安装了 Python pip 命令可用。

-
如何检查 Python 是否安装? 打开您的终端(在 Windows 上是命令提示符或 PowerShell,在 macOS 或 Linux 上是 Terminal),然后输入:
python --version
或者(如果您有多个 Python 版本,推荐使用
python3):python3 --version
如果显示了 Python 的版本号(
Python 3.10.8),说明 Python 已安装。 -
如何检查 pip 是否安装? 在同一个终端中输入:
(图片来源网络,侵删)pip --version
或者:
pip3 --version
如果显示了 pip 的版本和路径,说明 pip 已安装。
注意:在 Windows 上,您可能需要使用 py -m pip --version 来确保使用的是正确的 pip。
安装 Scipy
使用 pip 命令(推荐)
这是最直接的方法,打开您的终端,然后运行以下命令:

pip install scipy
或者,如果您明确想为 Python 3 安装:
pip3 install scipy
安装过程:
pip会自动从 Python Package Index (PyPI) 下载scipy包及其所有依赖项(如numpy,matplotlib等)。- 您会看到下载进度条和编译过程的输出。
scipy包含一些需要用 C 或 Fortran 编译的代码,所以这一步可能需要几分钟时间,具体取决于您的电脑性能。
使用 Python -m pip(更安全)
在某些系统环境下(特别是 Linux 和 macOS),直接调用 pip 可能会指向系统自带的旧版本 Python,而不是您自己安装的 Python,为了避免这个问题,推荐使用 python -m pip 的方式。
# 使用 python3 (推荐) python3 -m pip install scipy # 或者使用 python python -m pip install scipy
这种方式会确保您使用的是当前 Python 环境关联的 pip。
验证安装
安装完成后,您可以通过在 Python 交互式环境中导入 scipy 来验证安装是否成功。
打开终端,输入 python 或 python3 进入交互式环境:
python
尝试导入 scipy 并检查其版本:
>>> import scipy >>> scipy.__version__ '1.11.2' # 您看到的版本号可能与此不同
如果上述命令没有报错,并成功输出了版本号,恭喜您,scipy 已经成功安装!
您也可以尝试导入其一个常用子模块,scipy.linalg:
>>> from scipy import linalg
>>> linalg.inv([[1, 2], [3, 4]]) # 计算一个矩阵的逆
array([[-2. , 1. ],
[ 1.5, -0.5]])
如果一切正常,说明安装和配置都成功了。
常见问题及解决方案
问题 1:pip 不是内部或外部命令,也不是可运行的程序或批处理文件。
- 原因:Windows 系统无法找到
pip.exe文件,这可能是因为 Python 的安装路径没有被添加到系统的环境变量PATH中。 - 解决方案:
- 找到 Python 的安装目录(
C:\Users\YourUser\AppData\Local\Programs\Python\Python310\)。 - 将该目录下的
Scripts文件夹(C:\Users\YourUser\AppData\Local\Programs\Python\Python310\Scripts\)添加到系统的PATH环境变量中。 - 重启终端,然后再次尝试安装。
- 找到 Python 的安装目录(
问题 2:出现 ERROR: Could not build wheels for scipy 或 Microsoft Visual C++ 14.0 or greater is required 错误。
- 原因:
scipy是一个包含大量 C 和 Fortran 代码的包,在安装时需要编译,在 Windows 上,这需要一个 C++ 编译器(如 Microsoft Visual C++ Build Tools)。 - 解决方案:
- 最简单的解决方案:安装一个预编译好的
scipywheel 文件。pip通常会自动处理,但如果失败,可以手动指定,访问 Gohlke's Unofficial Windows Binaries for Python Extension Packages 网站,找到对应您 Python 版本和系统架构(32/64位)的scipywheel 文件(文件名类似scipy‑1.11.2‑cp310‑cp310‑win_amd64.whl),下载后用pip本地安装:pip install C:\path\to\your\downloaded\scipy‑1.11.2‑cp310‑cp310‑win_amd64.whl
- 安装编译工具:如果您想从源码编译,需要安装 Microsoft C++ Build Tools,在安装程序中,选择 "Desktop development with C++" 工作负载。
- 最简单的解决方案:安装一个预编译好的
问题 3:在 Linux 上安装失败,提示缺少 gfortran 或其他开发库。
- 原因:与 Windows 类似,Linux 也需要编译工具。
scipy依赖 Fortran 编译器gfortran和一些其他开发库(如blas和lapack)。 - 解决方案:
- 在 Debian/Ubuntu 上:
sudo apt-get update sudo apt-get install python3-pip python3-dev build-essential gfortran libblas-dev liblapack-dev
- 在 CentOS/RHEL/Fedora 上:
sudo yum install python3-pip python3-devel gcc-c++ gcc-gfortran blas-devel lapack-devel
安装完这些依赖后,再重新运行
pip install scipy即可。
- 在 Debian/Ubuntu 上:
最佳实践:使用虚拟环境
为了避免不同项目之间的 Python 包版本冲突,强烈建议您使用虚拟环境。venv 是 Python 自带的虚拟环境工具。
-
创建虚拟环境: 在您的项目文件夹下,运行:
# 创建一个名为 venv 的虚拟环境 python3 -m venv venv
-
激活虚拟环境:
- 在 Windows 上:
venv\Scripts\activate
- 在 macOS 或 Linux 上:
source venv/bin/activate
激活后,您的终端提示符前会出现
(venv)字样。
- 在 Windows 上:
-
在虚拟环境中安装 scipy: 在这个激活的虚拟环境中,
pip会只作用于这个环境,安装命令和之前一样:pip install scipy
-
退出虚拟环境: 当您完成工作后,可以随时退出虚拟环境:
deactivate
这样,scipy 及其依赖只会被安装在这个虚拟环境中,不会影响您系统上其他 Python 项目的环境。
