Jupyter Notebook安装教程:Python环境下pip与conda配置步骤
Jupyter Notebook 是一种基于网页的交互式计算开发环境,能够将活体代码、公式排版、交互可视化以及说明文本整合于单一文档中。在 Python 开发场景中,主要有两套官方主流的分发与包管理体系:针对官方纯净 Python 的 pip 体系,以及针对科学计算生态的 conda(Anaconda / Miniconda)体系。本文详细演示在这两类不同 Python 运行环境中安装、配置与验证 Jupyter Notebook 的标准操作路径,并重点介绍跨虚拟环境的内核(ipykernel)调度方案与实用配置调优。
一、准备工作:选择适合的包管理与安装路径
在开始安装前,需要明确当前系统所处的 Python 环境类型。错误的工具混用往往是后续依赖冲突和内核找不到的主要诱因。读者可以根据现有的基础环境和项目定位,选择最匹配的部署路线:
- 使用 pip 途径:适合通过 python.org 官方安装包或系统包管理器安装的标准 Python 环境。配合轻量级的
venv模块创建项目隔离沙箱,保持系统纯净。 - 使用 conda 途径:适合已安装 Anaconda 或 Miniconda 的用户。Conda 不仅管理 Python 软件包,还负责底层 C/C++ 动态链接库及非 Python 依赖项的解析,尤其适合机器学习与数值模拟类场景。
常见认知辨析:许多初学者误以为“安装了 Jupyter 就必须在全局全局系统环境中安装所有用到的三方库”。事实上,这种做法很容易导致系统包版本冲突损坏。现代 Python 最佳实践是将 Jupyter 自身或者内核(Kernel)置于受控虚拟环境中,保持底层环境干净。
二、基于 pip 的安装与配置全步骤
对于使用标准 Python 的系统(Windows、macOS 或 Linux),请在终端(Terminal 或 PowerShell)中按照以下顺序执行环境隔离与安装。
步骤 1:验证现有 Python 与 pip 版本
确认系统已经正确安装了 Python 3.8 及以上版本:
python --version
python -m pip --version
示例输出:Python 3.10.12pip 24.0 from ... (python 3.10)
步骤 2:创建并激活隔离的虚拟环境
为避免包冲突,建议在工程目录中创建一个虚拟环境:
# 创建名为 jupyter_env 的虚拟环境
python -m venv jupyter_env
# 激活虚拟环境 (Windows PowerShell)
.\jupyter_env\Scripts\Activate.ps1
# 激活虚拟环境 (Linux / macOS)
source jupyter_env/bin/activate
步骤 3:升级 pip 并安装 Jupyter Notebook
在已激活的环境提示符下,更新安装工具并安装核心软件包:
python -m pip install --upgrade pip
pip install notebook
如果需要更新一代的前端界面(包含标签页和文件面板的 JupyterLab),也可以选择执行 pip install jupyterlab。安装 notebook 包会自动拉取包含交互式计算协议、网页服务端、ipython 交互壳在内的完整依赖集。
步骤 4:启动与验证服务
安装完成后,在工作目录下直接输入启动指令:
jupyter notebook
终端将输出服务监听的本地地址(默认通常为 http://localhost:8888/?token=...),并自动在系统默认浏览器中弹出控制台页面。读者可点击右上角的“New”按钮新建一个 Notebook 文件,输入 print("Hello Jupyter") 并按 Shift + Enter 运行单元格。如果下方输出了对应字符,则表明安装成功。
三、基于 conda 的安装与配置全步骤
如果使用的是 Anaconda 完整版发行包,Jupyter Notebook 通常已经在 base 环境中随附安装;但如果使用的是 Miniconda 迷你发行版,或者需要为特定科学计算项目隔离一套专属的 Python 版本,建议通过 Conda 命令新建独立环境安装。
步骤 1:创建并进入专属 Conda 环境
在系统终端或 Anaconda Prompt 中,指定所需的 Python 版本创建新环境:
# 创建指定 Python 3.11 版本的环境
conda create -n py_notebook python=3.11
# 激活该环境
conda activate py_notebook
步骤 2:通过 conda-forge 频道安装 Jupyter Notebook
Conda 官方维护有高质量的开源社区频道 conda-forge,其版本迭代及时,依赖关系处理全面:
# 优先推荐从 conda-forge 频道拉取安装
conda install -c conda-forge notebook
安装过程将自动解析包括 Tornado、Traitlets、Jinja2、ZeroMQ 等在内的全套跨语言底层运行时与 Python 模块。
步骤 3:启动验证与退出
jupyter notebook
当工作完成并保存文档后,在终端按 Ctrl + C 两次可停止服务。若要退出当前 Conda 环境,执行:
conda deactivate
四、进阶配置:多虚拟环境的内核(ipykernel)管理
在实际开发过程中,读者常遇到的一个困惑是:“我在环境 A 中安装了 Jupyter Notebook,但在环境 B 中安装了 PyTorch。打开 Notebook 时,代码执行环境用的是 A,根本无法 import torch,难道每个环境都要重新安装一个庞大的 Jupyter 网页服务吗?”
答案是否定的。Jupyter 采用了前后端分离的解耦架构:Jupyter Server(前端页面与文件服务)与 Kernel(底层代码执行计算引擎)可以独立存在。我们只需在主环境保留一个 Jupyter Notebook 服务,然后在各个业务环境中安装轻量级的 ipykernel 驱动,即可在同一个 Jupyter 网页界面中自由切换不同的 Python 解释器。
实现该架构的具体注册操作如下:
- 激活业务目标环境(例如你的深度学习环境
dl_env):conda activate dl_env - 在业务环境中仅安装轻量级
ipykernel工具包:pip install ipykernel # 或者使用 conda: # conda install -c conda-forge ipykernel - 将该环境的解释器挂载到系统的 Jupyter 内核列表中:
python -m ipykernel install --user --name dl_env --display-name "Python (PyTorch-DL)" - 重新启动 Jupyter Notebook,在页面的内核菜单(Kernel > Change kernel)中即可自由切换至
Python (PyTorch-DL)。
五、常用运维配置与参数调整
默认状态下,Jupyter 会以启动命令执行时的当前目录作为文件根目录,并在本地随机分配可用端口。用户可通过生成并修改配置文件,使日常使用更加顺手。
1. 生成配置文件
jupyter notebook --generate-config
该命令将在用户家目录下创建主配置文件:
- Windows: C:\Users\<用户名>\.jupyter\jupyter_notebook_config.py
- Linux / macOS: ~/.jupyter/jupyter_notebook_config.py
2. 修改常用核心参数
用文本编辑器打开上述 Python 配置文件,查找并取消以下几项注释(移除行首的 #),按需设定对应值:
# 设定默认打开的主工作目录(必须使用绝对路径)
c.ServerApp.root_dir = '/Users/yourname/Projects'
# 启动时是否自动打开系统默认浏览器(服务器端运行时通常设为 False)
c.ServerApp.open_browser = True
# 设定固定监听端口
c.ServerApp.port = 8888
# 允许外部 IP 访问(如果在局域网服务器或云主机上搭建)
c.ServerApp.ip = '0.0.0.0'
六、安装与配置速查表与常见排错
为便于读者在日常安装与故障排查时快速索引,下表与总结图汇总了常见问题、现象原因及对应解决对策:
| 异常现象 | 根本原因 | 标准解决对策 |
|---|---|---|
'jupyter' 不是内部或外部命令 |
Python 或 Scripts 目录未加入系统 PATH 环境变量 | 检查安装目录;或通过完整命令 python -m notebook 绕过环境变量直接拉起 |
No module named '...' |
当前 Notebook 运行的内核并非安装三方库的目标环境 | 执行 python -m ipykernel install 挂载对应环境,并在界面右上角切换 Kernel |
浏览器无法连接或一直处于 connecting |
8888 端口冲突或防火墙阻断了 WebSocket 通信 | 使用 jupyter notebook --port 8889 换端口启动,检查代理软件设置 |
| 执行代码无响应(Kernel 处于挂起死锁) | 动态链接库冲突(如 MKL/OpenMP 重复加载) | 重启 Kernel;若为 Conda 环境,排查 numpy/torch 的二进制包源冲突 |
通过遵循上述环境隔离和架构解耦原则,无论是使用标准的 pip 工具还是多维度的 conda 科学计算生态,都能够构建出稳定、清晰且易于维护的 Jupyter 交互式工作空间。
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













