当前位置: 首页 > news >正文

软件使用教程(四):Jupyter Notebook 终极使用指南

文章目录

  • 前言
  • 一、Jupyter Notebook 是什么?
  • 二、安装与启动
    • 1. 安装
    • 2. 启动
  • 三、界面与核心概念
  • 四、单元格操作:Notebook的核心
    • 1. 模式
    • 2. 常用快捷键(效率的关键!)
  • 五、Magic命令:Notebook的超能力
  • 六、内核(Kernel)与管理
  • 七、扩展(Extensions)与主题
  • 八、分享你的工作成果
  • 总结


前言

在数据科学、机器学习和科学计算的广阔世界里,有一个工具因其极高的灵活性和交互性而备受青睐,它就是 Jupyter Notebook。无论你是正在学习Python的数据分析新手,还是需要快速原型设计和结果可视化的资深研究员,Jupyter Notebook 都能提供一个无缝衔接代码、文本和多媒体的集成环境。

本教程旨在成为一份从入门到精通的终极指南。我们将从最基础的安装和启动开始,逐步深入到其强大的核心功能与高级技巧,帮助你彻底掌握这把“瑞士军刀”,让你的项目工作流更加高效。


一、Jupyter Notebook 是什么?

Jupyter Notebook 是一个开源的Web应用程序,允许你创建和共享包含实时代码方程式可视化图表叙述性文本的文档。它的名字源于它支持的三种核心编程语言:Julia, Python, 和 R,同时也象征着它对科学计算(“Jupyter”听起来像“Jupiter”)的致敬。

核心价值:

  • 交互式探索:可以单独运行代码单元格,立即看到结果,非常适合数据清洗、转换和可视化。
  • 叙事性展示:将代码、输出结果和解释性文本结合在一个文档中,讲述一个完整的数据故事。
  • 可重复研究:整个分析过程被完整记录,确保结果可以被他人轻松复现。

二、安装与启动

1. 安装

最推荐的方式是通过Python的包管理工具pip进行安装。通常,我们会将其安装在一个虚拟环境中。

# 在命令行/终端中执行
pip install jupyterlab

或者安装经典的Notebook界面:

pip install notebook

2. 启动

安装完成后,在终端中导航到你希望存放笔记本项目的目录,然后输入:

jupyter notebook

或者(如果你安装的是JupyterLab):

jupyter lab

执行命令后,你的默认浏览器会自动打开并显示Jupyter的仪表盘界面(通常是 http://localhost:8888)。

三、界面与核心概念

启动后,你会看到文件浏览器(File Browser)。在这里你可以创建、上传和管理你的笔记本文件。

  • 创建一个新笔记本:点击右上角New -> Python 3(或其他内核),一个新的浏览器标签页将会打开。

一个新的Notebook文档(.ipynb文件)主要由以下部分组成:

  1. 菜单栏(Menu Bar):提供文件操作、编辑、运行内核等高级功能。
  2. 工具栏(Toolbar):常用操作的快捷按钮,如保存、添加单元格、运行单元格等。
  3. 代码单元格(Code Cell):这是你编写和运行代码的地方。光标聚焦时,单元格边框呈绿色。
  4. Markdown单元格(Markdown Cell):用于编写格式化的文本,如标题、列表、链接甚至LaTeX数学公式。光标聚焦时,边框呈蓝色。

四、单元格操作:Notebook的核心

1. 模式

  • 命令模式(Command Mode):按Esc键进入,单元格边框为蓝色。在此模式下,你可以操作整个单元格(移动、删除、切换类型)。
  • 编辑模式(Edit Mode):按Enter键或双击单元格进入,单元格边框为绿色。在此模式下,你可以编辑单元格内的内容。

2. 常用快捷键(效率的关键!)

  • 通用快捷键

    • Shift + Enter:运行当前单元格,并选中下一个单元格。
    • Ctrl + Enter:运行当前单元格,并停留在本单元格。
    • Alt + Enter:运行当前单元格,并在下方插入一个新的代码单元格。
  • 命令模式快捷键(按Esc后)

    • A:在上方插入单元格(Above)。
    • B:在下方插入单元格(Below)。
    • D, D(按两次D):删除当前单元格(Delete)。
    • M:将当前单元格转换为Markdown单元格。
    • Y:将当前单元格转换为代码单元格(Y好像是代码?记不住可以想成‘y’是python代码)。
    • Z:撤销删除操作。
  • 编辑模式快捷键(按Enter后)

    • Ctrl + /:注释/取消注释选中的行。
    • Tab:代码补全或缩进。

五、Magic命令:Notebook的超能力

Magic命令是Jupyter内置的特殊命令,以%%%为前缀,能提供标准Python之外的大量实用功能。

  • 行Magic(单个%)》:只影响一行代码。

    • %run <script.py>:运行一个外部Python脚本。
    • %timeit <statement>:测量一行代码的执行时间。
    • %matplotlib inline极其重要! 让matplotlib绘制的图表直接显示在Notebook页面内。
  • 单元格Magic(两个%%)》:影响整个单元格的代码。

    • %%writefile <filename>:将整个单元格的内容写入到一个文件中。
    • %%html:将整个单元格的内容渲染为HTML。
    • %%bash:在单元格中运行Bash命令。

六、内核(Kernel)与管理

内核是独立运行的“计算引擎”,它负责执行你输入的代码并返回结果。

  • 中断内核(Interrupt):如果代码陷入死循环或运行过长,可以点击工具栏的(停止)按钮来中断它。
  • 重启内核(Restart):点击工具栏的(重启)按钮。这会清除所有变量和导入的模块,从一个干净的状态重新开始。
  • 切换内核:如果你的环境安装了多个Python版本或其他语言(如R,Julia)的内核,你可以在Kernel -> Change Kernel菜单中切换。

七、扩展(Extensions)与主题

Jupyter的功能可以通过扩展(Extensions) 来极大地增强。

对于经典Notebook,可以安装jupyter_contrib_nbextensions

pip install jupyter_contrib_nbextensions && jupyter contrib nbextension install

安装后,你会在仪表盘看到一个Nbextensions标签页,里面有很多实用插件,如代码折叠、目录生成、变量检查器等。

对于JupyterLab,扩展生态系统更加强大和现代,可以通过Extension Manager直接搜索安装,例如:

  • @jupyterlab/toc:自动生成目录。
  • jupyterlab-drawio:嵌入Draw.io图表。
  • jupyterlab-theme-*:各种主题,如暗黑主题。

八、分享你的工作成果

完成分析后,你有多种方式分享你的Notebook:

  1. 分享.ipynb文件:直接发送你的笔记本文件,对方需要有Jupyter环境才能打开。
  2. 导出为其他格式
    • File -> Download as -> HTML (.html)最常用,可以保留所有代码、样式和图表,方便在浏览器中直接查看。
    • File -> Download as -> PDF via LaTeX (.pdf):生成漂亮的PDF报告(需要安装LaTeX)。
    • File -> Download as -> Python (.py):导出为纯Python脚本。
  3. 使用Nbviewer:将你的.ipynb文件上传到GitHub等平台,然后将链接粘贴到https://nbviewer.jupyter.org/,它会自动渲染并提供一个可分享的URL。
  4. 使用JupyterHub/Binder:对于团队或教学,可以部署JupyterHub。Binder则允许任何人通过一个URL直接启动并交互你的Notebook,而无需本地安装。

总结

Jupyter Notebook不仅仅是一个代码编辑器,它是一个动态的计算环境强大的沟通工具。它完美地弥合了“编写代码”和“展示思想”之间的鸿沟。

通过本教程,希望你已经掌握了:

  • 基础:如何安装、启动和创建你的第一个Notebook。
  • 核心:熟练操作单元格、使用快捷键、编写Markdown和代码。
  • 进阶:利用Magic命令和扩展来提升你的生产力。
  • 协作:如何将你的成果以多种形式分享给他人。
http://www.xdnf.cn/news/1425367.html

相关文章:

  • 【iOS】关键字复习
  • javaScript变量命名规则
  • MySQL基础知识保姆级教程(四)视图与约束
  • Chrome 如何清除浏览器缓存
  • 【开题答辩全过程】以 基于SpringBoot的校园一卡通管理系统的设计与实现为例,包含答辩的问题和答案
  • ESP32驱动数字麦克风INMP441
  • A2A + MCP 的python实现的最小可运行骨架
  • Jmeter实现参数化的4种方式
  • 构建AI智能体:二十、妙笔生花:Gradio集成DashScope Qwen-Image模型实现文生图
  • 人脸识别备案的重要意义
  • ES6新特性:JavaScript的进化装备箱[特殊字符]
  • 记一次使用函数式接口
  • A股大盘数据-20250901 分析
  • GD32入门到实战25--独立看门狗
  • JAVA后端开发——MyBatis 结合 MySQL JSON 类型查询详解
  • 【STM32】贪吃蛇 [阶段 3] 增强模块结构(架构优化)
  • curl 介绍及使用教程
  • python爬虫之selenium库进阶(小白五分钟从入门到精通)
  • 基本渗透概念
  • Raft 协议在 Nacos 中的实现
  • 从零开始实现Shell | Linux进程调度实战
  • Product Hunt 每日热榜 | 2025-09-01
  • 基于YOLOv11的脑卒中目标检测及其完整数据集——推动智能医疗发展的新机遇!
  • 齿轮里的 “双胞胎”:分度圆与节圆
  • [React]监听Form中某个字段的变化
  • 微算法科技(NASDAQ:MLGO)张量网络与机器学习融合,MPS分类器助力顶夸克信号识别
  • deepseek doubao chatgpt 优缺点分析
  • 并发--并发中的线程状态及不同状态下线程所在队列
  • React学习教程,从入门到精通, React 入门指南:创建 React 应用程序的语法知识点(7)
  • OpenCV-CUDA 图像处理