【2025.06】jupyter notebook 7+ 新手安装、配置、扩展应用(windows篇)

article/2025/8/11 4:16:58

本文目录

  • 前述
  • 一、安装
  • 二、配置
    • 2.1 jupyter_notebook_config.py生成配置文件
    • 2.2 服务器与网络设置
      • a. 修改端口号
      • b. 允许远程访问
      • c. 设置工作目录
    • 2.3 安全与认证
      • a. 禁用密码登录(仅限本地安全环境)
      • b. 设置登录密码
      • c. 启用SSL加密(HTTPS)
    • 2.4 界面与用户体验设置
      • a. 自定义启动页
      • b. 禁用浏览器自动打开
      • c. 调整内核超时时间
    • 2.5 扩展与插件管理
      • a、table of contents
      • b、Debugger
      • c、Real Time collaboration
      • d、Theming and Dark Mode
      • e、Internationalization
      • f、Accessibility Improvements
      • g、Support for many JupyterLab extensions
      • h、Compact View on Mobile Devices

前述

本文所述jupyter notebook的安装基于anaconda,在windows操作系统之下实现,并对anaconda下的jupyter notebook特点做一些介绍,重点介绍安装和配置,具体的应用不是本章节核心内容,因为在我看来,jupyter notebook的应用,看过几分钟教程就能上手入门的,但jupyter notebook的安装和配置,如果不常操作实践,往往会让大家花费比较大的时间和精力,正所谓,“兵马未动,粮草先行” 。

本文安装在conda创建的虚拟环境(base),anaconda安装教程可看本人同栏下相应文章。

一、安装

jupyter notebook默认情况下在anaconda安装完成后便自动给安装好了,启动方式有两种:

一是通过电脑“开始”菜单中选择jupyter notebook打开即可。
在这里插入图片描述

二是通过CMD命令方式打开。

一般情况下随anaconda自动安装的jupyter notebook会默认安装在conda的虚拟环境base下,并做为conda所有虚拟环境共有的功能组件形式,如果需要为某个单独的conda虚拟环境安装,需要先切换到具体的conda环境,再执行安装命令,此jupyter notebook安装仅在当前虚拟环境下生效。如下,在虚拟环境py311下安装jupyter notebook命令:

conda install jupyter notebook

安装结果:
在这里插入图片描述
安装完查看版本命令:jupyter notebook --version

(py311) C:\Users\lu>jupyter notebook --version
7.3.2(py311) C:\Users\lu>

查看所安装jupyter notebook内核信息:

jupyter kernelspec list Available kernels

在这里插入图片描述

如果切换到base环境下执行安装,则会覆盖或更新原来的全局jupyter notebook。

需要说明的是,在通过命令启用jupyter notebook时,会优先打开当前虚拟环境下的局部jupyter notebook,如果当前虚拟环境没有安装,则会调用全局jupyter notebook并打开。

二、配置

在 Anaconda 的 Jupyter Notebook 中,可通过修改配置文件(jupyter_notebook_config.py)或使用图形化工具调整多项核心设置,后面无特别说明,所修改或添加配置项均在jupyter_notebook_config.py文件中操作,以下是一些挑选的重点可修改配置及操作指南:

2.1 jupyter_notebook_config.py生成配置文件

执行命令

jupyter notebook --generate-config

如果不存在jupyter_notebook_config.py,则会生成此配置文件。存在则覆盖。文件默认路径:

  • Linux/Mac:
    ~/.jupyter/jupyter_notebook_config.py
  • Windows:
    C:\Users\<用户名>\.jupyter\jupyter_notebook_config.py

2.2 服务器与网络设置

a. 修改端口号

c.ServerApp.port = 9000  #新版配置项 默认8888

旧版相应配置项:

c.NotebookApp.port = 8889  # 旧版配置项  默认 8888

以下只罗列新版配置项,旧版一般相应配置项名前辍为c.NotebookApp.

如不修改或设置,启动时会自动采用默认端口号,如被占用则会自动选用其它空闲端口。

b. 允许远程访问

c.NotebookApp.ip = '0.0.0.0'  # 允许所有IP访问(需配合防火墙设置)
c.NotebookApp.allow_remote_access = True

c. 设置工作目录

c.ServerApp.notebook_dir = 'D:\codes_jupyter'

2.3 安全与认证

a. 禁用密码登录(仅限本地安全环境)

c.ServerApp.token = ''  # 关闭Token验证
c.ServerApp.password = ''  # 清除密码(需先生成密码)

b. 设置登录密码

jupyter notebook通常不支持直接在配置文件jupyter_notebook_config.py上添加登录访问密码设置,从 notebook 5.0 开始,可以通过命令来为 notebook 服务器输入和保存密码。jupyter notebook password会提示你输入密码,并将哈希值保存在jupyter_notebook_config.json中。此文件目录与jupyter_notebook_config.py配置所在目录相同。

  • 命令方式
    在CMD命令行下执行命令:jupyter notebook password
    在这里插入图片描述
    即可完成密码的添加,并把生成的密码存放在Jupyter_server_config.json文件中。

  • 手动方式
    准备哈希密码,使用函数notebook.auth.security.passwd()可根据你输入密码来生成对应的哈希密码。

In [1]: from notebook.auth import passwd
In [2]: passwd()
Enter password:
Verify password:
Out[2]: 'sha1:67c9e60bb8b6:9ffede0825894254b2e042ea597d771089e11aed'

将上一步产生的哈希码可以添加到jupyter_notebook_config.py中,例如:

c.ServerApp.password = u'sha1:67c9e60bb8b6:9ffede0825894254b2e042ea597d771089e11aed'

注意: 自动化密码配置产生的哈希码存放于jupyter_notebook_config.json,手工产生的哈希码存放于jupyter_notebook_config.py。.json配置文件优先于.py配置文件,因此如果Json文件中已经配置了密码,手工配置的密码会无效。

c. 启用SSL加密(HTTPS)

在配置文件中jupyter_notebook_config.py添加本地准备好的证书文件就可以。如下:

c.ServerApp.certfile = '/path/to/your/cert.pem'
c.ServerApp.keyfile = '/path/to/your/key.pem'

2.4 界面与用户体验设置

a. 自定义启动页

默认打开的文件/目录。可在配置文件中添加如下配置项:

c.ServerApp.default_url = '/tree/your_directory'  # 替换为路径

b. 禁用浏览器自动打开

可以配置文件中添加如下配置项:

c.ServerApp.open_browser = False

c. 调整内核超时时间

防止长时间计算断开内核,可以配置文件中添加以下配置项:

c.ServerApp.shutdown_no_activity_timeout = 86400  # 24小时(单位:秒)

旧版配置项:c.MappingKernelManager.cull_idle_timeout = 86400 # 24小时(单位:秒)

2.5 扩展与插件管理

notebook自7.0版本开始,对扩展的管理做了些明显的修改,已经不能像低版本那样通过安装jupyter_contrib_nbextensions来管理使用扩展或插件,7.0安装jupyter_contrib_nbextensions会出现不兼容的异常现象。如果是低版本(建议不超6.5版本)可以通过安装jupyter_contrib_nbextensions模块来实现扩展插件的管理,新版中已内置了扩展与插件的管理功能,通过菜单栏可便捷管理扩展和插件的应用(没有低版本中的Nbextensions标签选项)。

Jupyter Notebook v7.0.0基于JupyterLab,因此它包含了过去几年JupyterLab中添加的许多新功能和改进,下面是一些亮点功能或更新:

  • table of contents (目录索引)
  • Debugger(调试器)
  • Real Time collaboration(实时协作)
  • Theming and Dark Mode(主题和深色模式)
  • Internationalization(界面语言更换)
  • Accessibility Improvements(对文本编辑器的可访问性改进)
  • Support for many JupyterLab extensions(JupyterLab扩展支持)
  • Compact View on Mobile Devices(移动设备支持)

有一些扩展插件已默认安装并启用,有更多的扩展插件需要自行安装。
扩展与插件的管理:
新版notebook扩展管理器需要在notebook首页菜单setting中启用:

然后想管理扩展时就在菜单View中选中Extension Manage就可以查看或安装扩展了。
在这里插入图片描述

a、table of contents

此功能已被内嵌并默认启用,可通过菜单栏的View应用,如:
在这里插入图片描述

b、Debugger

调试器,支持设置断点和检查变量。 (注意,经我测试此功能需要jupyter notebook7.3.2或以上版本才可用,具体原因不详?)

打开需要调试的文件后在右上方会看到一个调试器的图标。

在这里插入图片描述
点一下灰色的调试器图标变黄色即可启用。

c、Real Time collaboration

协作模式,可以与其他用户共享您的notebook并实时操作他,甚至适用于JupyterLab和Jupyter Notebook之间实时协作。
需要自行安装扩展,conda install jupyter-collaboration

d、Theming and Dark Mode

主题与深色模式。Jupyter Notebook默认的是白色主题,现在Jupyter Notebook 7内置几种主题及字体大小设置选项:
在这里插入图片描述
也支持使用JupyterLab的主题,但需要自行安装,如:

conda install jupyterlab-night

即可在菜单Settings-Theme看到安装的 jupyterlab-night主题。

e、Internationalization

界面语言切换。可以自行安装相应语言包,就可以在Settings中切换语言。
安装后:conda install jupyterlab-language-pack-zh-CN
在这里插入图片描述

f、Accessibility Improvements

优化升级了notebook的文本编辑器,由CodeMirror 5升级CodeMirror 6。

g、Support for many JupyterLab extensions

Jupyter Notebook 7是基于JupyterLab的,因此支持许多现有的JupyterLab扩展。可以使用conda安装各种JupyterLab扩展。

h、Compact View on Mobile Devices

新版支持移动端访问。


http://www.hkcw.cn/article/mJFMbjEqro.shtml

相关文章

ASP.NET Core SignalR 身份认证集成指南(Identity + JWT)

文章目录 前言一、完整解决方案架构二、实现步骤1.配置 Identity 和 JWT 认证2. SignalR JWT配置3.SignalR Hub 集成认证和授权4.控制器5.客户端集成 (JavaScript)6.配置 appsettings.json 三、认证流程详解1.用户登录&#xff1a;2.SignalR 连接&#xff1a;3.JWT 验证&#x…

Redis最佳实践——性能优化技巧之数据结构选择

Redis在电商应用中的数据结构选择与性能优化技巧 一、电商核心场景与数据结构选型矩阵 应用场景推荐数据结构内存占用读写复杂度典型操作商品详情缓存Hash低O(1)HGETALL, HMSET购物车管理Hash中O(1)HINCRBY, HDEL用户会话管理Hash低O(1)HSETEX, HGET商品分类目录Sorted Set高O…

【Tauri2】049——upload

前言 这篇就看看一个简单地插件——upload Upload | Taurihttps://tauri.app/plugin/upload/upload的英文意思是“上传&#xff08;程序或信息&#xff09;”。 看来是用来上传文件的。 支持移动端 正文 安装 pnpm tauri add upload 在前后端都会安装&#xff0c;即 .plug…

《深度解构现代云原生微服务架构的七大支柱》

☁️《深度解构现代云原生微服务架构的七大支柱》 一线架构师实战总结&#xff0c;系统性拆解现代微服务架构中最核心的 7 大支柱模块&#xff0c;涵盖通信协议、容器编排、服务网格、弹性伸缩、安全治理、可观测性、CI/CD 等。文内附架构图、实操路径与真实案例&#xff0c;适…

ADAS概述

一、ADAS的概念 1.1 ADAS功能概述、架构方案、控制器、传感器 核心概念&#xff1a;ADAS(Advanced Driving Assistance System)是高级驾驶辅助系统的总称&#xff0c;包含三大类功能&#xff1a; 舒适体验类&#xff1a;如自适应巡航(ACC)、高速公路辅助(HWA)、车道居中控制&…

深入探讨redis:万字讲解集群

什么是集群 广义的集群&#xff1a;多个机器&#xff0c;构成了分布式系统&#xff0c;就可以称为“集群”。 狭义的集群&#xff1a;redis提供的集群模式&#xff0c;这个集群模式之下&#xff0c;主要解决的是存储空间不足的问题(拓展存储空间) 随着数据量的增多一台机器的…

一键开关机电路分析

左边电源9V为输入电源&#xff0c;中间有一个LDO&#xff0c;输出5V给右侧的芯片供电。 Q1是PNP三极管&#xff0c;Q2和Q3是NPN三极管。 初始状态下&#xff0c;按键断开&#xff0c;Q3截止&#xff0c;故Q1的基极为高电平&#xff0c;电压为9V&#xff0c;be间没有电流流过&am…

输入ifconfig,发现ens33不见了,无法连接至虚拟机

输入ifconfig&#xff0c;发现ens33不见了&#xff0c;无法连接至虚拟机 输入ifconfig&#xff0c;发现ens33不见了&#xff0c;无法连接至虚拟机 输入ifconfig&#xff0c;发现ens33不见了&#xff0c;无法连接至虚拟机 当输入ifconfig&#xff0c;发现少了ens33&#xff0c;无…

c++学习值---模版

目录 一、函数模板&#xff1a; 1、基本定义格式&#xff1a; 2、模版函数的优先匹配原则&#xff1a; 二、类模板&#xff1a; 1、基本定义格式&#xff1a; 2、类模版的优先匹配原则&#xff08;有坑哦&#xff09;&#xff1a; 3、缺省值的设置&#xff1a; 4、ty…

day62—DFS—太平洋大西洋水流问题(LeetCode-417)

题目描述 有一个 m n 的矩形岛屿&#xff0c;与 太平洋 和 大西洋 相邻。 “太平洋” 处于大陆的左边界和上边界&#xff0c;而 “大西洋” 处于大陆的右边界和下边界。 这个岛被分割成一个由若干方形单元格组成的网格。给定一个 m x n 的整数矩阵 heights &#xff0c; hei…

LeetCode第240题_搜索二维矩阵II

LeetCode 第240题&#xff1a;搜索二维矩阵 II 题目描述 编写一个高效的算法来搜索 m n 矩阵 matrix 中的一个目标值 target。该矩阵具有以下特性&#xff1a; 每行的元素从左到右升序排列。每列的元素从上到下升序排列。 难度 中等 题目链接 点击在LeetCode中查看题目…

开始通信之旅-----话题通信

1. 话题通信的流程 话题通信主要涉及到三个对象 管理者发布者订阅者 其主要流程如下图 详细解释一下&#xff1a;1.发布者向管理者发送发布话题等相关信息&#xff0c;在管理者处注册 2.订阅者向管理者发布订阅话题等相关信息&#xff0c;在管理者处注册 &#xff08;注意…

Ansible自动化运维工具全面指南:从安装到实战应用

目录 1 Ansible核心介绍 1.1 什么是Ansible&#xff1f; 1.2 Ansible核心特点解析 1.2.1 基于Python生态 1.2.2 无代理架构优势 1.2.3 幂等性实现原理 2 Ansible离线安装指南 2.1 内网环境安装准备 2.2 分步安装过程 2.2.1 安装依赖包 2.2.2 安装Ansible主包 2.2.3…

设计模式——模版方法设计模式(行为型)

摘要 模版方法设计模式是一种行为型设计模式&#xff0c;定义了算法的步骤顺序和整体结构&#xff0c;将某些步骤的具体实现延迟到子类中。它通过抽象类定义模板方法&#xff0c;子类实现抽象步骤&#xff0c;实现代码复用和算法流程控制。该模式适用于有固定流程但部分步骤可…

ACL基础配置

文章目录 基本ACL配置组网需求组网拓扑实验步骤测试结果配置文件 高级ACL配置组网需求组网拓扑实验步骤测试结果配置文件 基本ACL配置 组网需求 现组网结构如下&#xff0c;VPC充当服务器&#xff0c;PC3与PC4是两个不同的网段&#xff0c;实现拒绝192.168.1.0/24访问VPC 组…

Redis最佳实践——热点数据缓存详解

Redis在电商热点数据缓存中的最佳实践 一、热点数据定义与识别 1. 热点数据特征 高频访问&#xff08;QPS > 1000&#xff09;数据规模适中&#xff08;单条 < 10KB&#xff09;数据变化频率低&#xff08;更新间隔 > 5分钟&#xff09;业务关键性高&#xff08;直接…

Git初识Git安装

目录 1. Git初识 1.1 提出问题 1.2 如何解决--版本控制器 1.3 注意事项 2 Git安装 2.1 Centos 2.2 Ubuntu 2.3 Windows 1. Git初识 1.1 提出问题 不知道你工作或学习时&#xff0c;有没有遇到这样的情况&#xff1a;我们在编写各种文档时&#xff0c;为了防止文档丢失…

数据库原理 试卷

以下是某高校教学管理系统的毕业论文指导ER图&#xff0c;数据信息&#xff1a;一名教师指导多名学生&#xff0c;一名学生只能选择一名教师&#xff0c;试分析完成以下各题&#xff0c;如用SQL命令完成的&#xff0c;在SQL Server2008验证后把答案写在题目的下方。 图1 毕业论…

在线音乐平台测试报告

一、项目背景 1.1 测试目标 验证音乐播放器功能完整性&#xff0c;确保用户管理、音乐管理、播放控制、收藏功能等核心模块符合需求。 1.2 项目技术栈 后端&#xff1a;Spring Boot/Spring MVC 数据库&#xff1a;MySQL 前端&#xff1a;原生 HTML/CSS/AJAX 1.3 项目源码 …

基于GeoTools和OSM路网求解两条道路相交点-以长沙市为例

目录 前言 一、基础数据简介 1、QGIS数据展示 2、元数据介绍 二、GeoTools相交求解 1、加载路网数据 2、查找道路信息 3、计算相交点 4、集成调用及输出 三、总结 前言 今天是端午节也是六一儿童节&#xff0c;当端午节碰到儿童节&#xff0c;双节的碰撞。在这祝各位朋…